export interface IdParam {
	id: number
}

export interface StringIdParam {
	id: string
}

export interface Address {
	street1: string
	street2: string
	city: string
	zip: string
	state: string
	country: string
}

export interface HealthStatus {
	online: boolean
}

export interface ClusterHealth {
	account: HealthStatus
	auth: HealthStatus
	payment: HealthStatus
	event: HealthStatus
	order: HealthStatus
	blockchain: HealthStatus
	venue: HealthStatus
}

export type ListInfo<T> = {
	data: T[]
	paging: { limit: number; offset: number; total: number }
}

export interface PagingQuery {
	limit?: number
	offset?: number
}

export interface QRCodePayload {
	url: string
	targetUrl: string
	fcn: string
	organizerId: string
}

export interface StatusResponse {
	success: boolean
}
