import { CreatedOrUpdatedBy } from '../models/CreatedOrUpdatedBy';
import { EmpiricalPolicy } from '../models/EmpiricalPolicy';
import { State } from '../models/State';
import { StateType } from '../models/StateType';
import { StorageItem } from '../services/storage/StorageItem';
import { PrefectStateNames } from '../types';
import { SchemaValues } from '../types/schemas';
export interface IFlowRun {
    id: string;
    flowId: string;
    flowName: string | null;
    deploymentId: string | null;
    deploymentVersionId: string | null;
    flowVersion: string | null;
    idempotencyKey: string | null;
    expectedStartTime: Date | null;
    nextScheduledStartTime: Date | null;
    parameters: SchemaValues;
    autoScheduled: boolean | null;
    context: unknown;
    empiricalConfig: unknown;
    empiricalPolicy: EmpiricalPolicy | null;
    estimatedRunTime: number;
    estimatedStartTimeDelta: number | null;
    totalRunTime: number;
    startTime: Date | null;
    endTime: Date | null;
    name: string | null;
    parentTaskRunId: string | null;
    stateId: string | null;
    stateName: PrefectStateNames | null;
    stateType: StateType | null;
    state: State | null;
    tags: string[] | null;
    runCount: number | null;
    created: Date;
    createdBy: CreatedOrUpdatedBy | null;
    updated: Date;
    workQueueName: string | null;
    workPoolName: string | null;
    workPoolQueueName: string | null;
    jobVariables: Record<string, unknown>;
}
export declare class FlowRun extends StorageItem implements IFlowRun {
    readonly id: string;
    readonly flowId: string;
    readonly flowName: string | null;
    readonly deploymentId: string | null;
    readonly deploymentVersionId: string | null;
    readonly workQueueName: string | null;
    readonly kind = "flowRun";
    flowVersion: string | null;
    idempotencyKey: string | null;
    expectedStartTime: Date | null;
    nextScheduledStartTime: Date | null;
    parameters: SchemaValues;
    autoScheduled: boolean | null;
    context: unknown;
    empiricalConfig: unknown;
    empiricalPolicy: EmpiricalPolicy | null;
    estimatedRunTime: number;
    estimatedStartTimeDelta: number | null;
    totalRunTime: number;
    startTime: Date | null;
    endTime: Date | null;
    name: string | null;
    parentTaskRunId: string | null;
    stateId: string | null;
    stateName: PrefectStateNames | null;
    stateType: StateType | null;
    state: State | null;
    tags: string[] | null;
    runCount: number | null;
    created: Date;
    createdBy: CreatedOrUpdatedBy | null;
    updated: Date;
    workPoolName: string | null;
    workPoolQueueName: string | null;
    jobVariables: Record<string, unknown>;
    constructor(flowRun: IFlowRun);
    get duration(): number;
    isScheduled(): this is FlowRun & {
        expectedStartTime: Date;
    };
    get delta(): string | null;
}
