export type SessionUser = {
	id: string;
	email: string;
	name: string;
	avatar_url: string | null;
};

export type SessionPayload = {
	user: SessionUser;
};

export type Project = {
	id: string;
	name: string;
	description: string | null;
	owner_id: string;
	default_ssh_key_id: string | null;
};

export type WorkspaceSummary = {
	id: string;
	name: string;
	branch: string;
	status: string;
	instance_count: number;
};

export type RepositorySummary = {
	id: string;
	name: string;
	remote_url: string;
	workspaces: WorkspaceSummary[];
};

export type ProjectWithRepos = {
	id: string;
	name: string;
	description: string | null;
	owner_id: string;
	default_ssh_key_id: string | null;
	repositories: RepositorySummary[];
	created_at: string;
};
