// DO NOT EDIT. This file is automatically generated.

export interface BinaryRPCRequest {
	binary_name: string;
	compile_task_name: string;
	commit: string;
	patch_issue: string;
	patch_set: string;
}

export interface BloatyOutputMetadata {
	version: number;
	timestamp: string;
	swarming_task_id: string;
	swarming_server: string;
	task_id: string;
	task_name: string;
	compile_task_name: string;
	binary_name: string;
	bloaty_cipd_version: string;
	bloaty_args: string[] | null;
	patch_issue: string;
	patch_server: string;
	patch_set: string;
	repo: string;
	revision: string;
	commit_timestamp: string;
	author: string;
	subject: string;
}

export interface TreeMapDataTableRow {
	name: string;
	parent: string;
	size: number;
}

export interface BinaryRPCResponse {
	metadata: BloatyOutputMetadata;
	rows: TreeMapDataTableRow[];
}

export interface Binary {
	metadata: BloatyOutputMetadata;
}

export interface BinariesFromCommitOrPatchset {
	binaries: Binary[];
	commit: string;
	patch_issue: string;
	patch_set: string;
}

export interface MostRecentBinariesRPCResponse {
	binaries: BinariesFromCommitOrPatchset[] | null;
}
