// 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;
	compile_task_name_no_patch?: string;
	binary_name: string;
	bloaty_cipd_version: string;
	bloaty_args: string[] | null;
	bloaty_diff_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 BinarySizeDiffRPCRequest {
	binary_name: string;
	compile_task_name: string;
	commit: string;
	patch_issue: string;
	patch_set: string;
}

export interface BinarySizeDiffRPCResponse {
	metadata: BloatyOutputMetadata;
	raw_diff: string;
}

export interface Binary {
	metadata: BloatyOutputMetadata;
}

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

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