type Mutation {
	heartbeat(
		identifier: String!
		presence: HeartbeatPresenceInput
		extension: HeartbeatExtensionInput!
	): HeartbeatResult!
}

input HeartbeatPresenceInput {
	service: String!
	version: String!
	language: String!
	since: Float!
}

input HeartbeatExtensionInput {
	version: String!
	language: String!
	connected: HeartbeatConnectedInput
}

input HeartbeatConnectedInput {
	app: Int!
	discord: Boolean!
}

type HeartbeatResult {
	identifier: String!
	presence: HeartbeatPresence
	extension: HeartbeatExtension!
}

type HeartbeatPresence {
	service: String!
	version: String!
	language: String!
	since: Float!
}

type HeartbeatExtension {
	version: String!
	language: String!
	connected: HeartbeatConnected
}

type HeartbeatConnected {
	app: Int!
	discord: Boolean!
}
