/**
 * The client configuration
 */
export interface Config {
	instanceName: string;
	maintenance: boolean;
	allowRegister: boolean;
	allowAnonymous: boolean;
	verification: boolean;
	installing: boolean;
}

/**
 * The publically available fields representing
 * a Vindigo user.
 */
export interface Profile {
	id: number
	avatar?: string
	fullName: string
	firstName: string
	email?: string
	username: string
	website: string
	bio: string
	location: string
	role: string
	createdAt: string
	isAuthentic: boolean
	isVerified: boolean
}

/**
 * Data representing a team
 */
export interface Team {
	id: number
	slug: string
	name: string
	description: string
	createdAt: string
	logoImage: string
	teamUrl: string
}

/**
 * Represents an item displayed in the
 * toolbar creation menu.
 */
export interface ToolbarCreationItem {
	icon: string,
	title: TranslationKey,
	description: TranslationKey,
	handler: Function|string
}