import type { components } from './schema'; import type { ViewResponse as BuildingViewResponse } from './building'; export interface MakePlanBlock { types?: Array<{ type?: string; name?: string; image?: string; url?: string }>; level_costs?: Array<{ level?: number; food?: number; ore?: number; water?: number; energy?: number; /** Half of the per-resource cost; sent `sprintf`'d. */ waste?: number; time?: number; }>; subsidy_cost?: number; /** Only present while a plan is being made, e.g. "Warehouse (3+0)". */ making?: string; } export interface ViewResponse extends BuildingViewResponse { make_plan: MakePlanBlock; } export interface MakePlanParams { building_id: number; type: string; level: number; } export interface MakePlanResponse { building: components['schemas']['building']; status: { server: components['schemas']['server_status']; empire?: components['schemas']['empire_status']; body?: components['schemas']['body_status']; }; make_plan?: MakePlanBlock; } export interface SubsidizePlanParams { building_id: number; } export interface SubsidizePlanResponse { building: components['schemas']['building']; status: { server: components['schemas']['server_status']; empire?: components['schemas']['empire_status']; body?: components['schemas']['body_status']; }; make_plan?: MakePlanBlock; }