import { UiDeploymentsCountsByFlow } from '../models/api/UiDeploymentsCountsByFlow';
import { FlowRunsFilter, TaskRunsFilter } from '../models/Filters';
import { NextFlowRun } from '../models/NextFlowRun';
import { UiFlowRunHistory } from '../models/UiFlowRunHistory';
import { UiNextFlowRunByFlow } from '../models/UiNextFlowRunByFlow';
import { UiTaskRunCountsByState } from '../models/UiTaskRunCountsByState';
import { WorkspaceApi } from '../services/WorkspaceApi';
export interface IUiApi {
    getFlowRunHistory: (filter: FlowRunsFilter) => Promise<UiFlowRunHistory[]>;
}
export declare class UiApi extends WorkspaceApi implements IUiApi {
    protected routePrefix: string;
    private readonly nextRunsBatcher;
    getFlowRunHistory(filter: FlowRunsFilter): Promise<UiFlowRunHistory[]>;
    getTaskRunsCountByState(filter: TaskRunsFilter): Promise<UiTaskRunCountsByState>;
    getDeploymentsCountByFlow(flowIds: string[]): Promise<UiDeploymentsCountsByFlow>;
    getNextRunsByFlow(flowIds: string[]): Promise<UiNextFlowRunByFlow>;
    getNextRunByFlow(flowId: string): Promise<NextFlowRun>;
    getFlowRunTaskCounts(flowRunIds: string[]): Promise<Record<string, number>>;
    private readonly getFlowRunTaskCountBatcher;
    getFlowRunTaskCount(flowRunId: string): Promise<number>;
}
