import { Container, ContainerEngine } from '../../ContainerEngine.js';
import { FileId } from '../../model/model.js';
import { FileContentService } from '../../utils/FileContentService.js';
export interface ActionStep {
    name?: string;
    uses?: string;
    run?: string;
    with?: {
        [key: string]: string;
    };
    env?: {
        [key: string]: string;
    };
}
export interface ActionDefinitionLegacy {
    on: string;
    'run-name'?: string;
    steps: Array<ActionStep>;
}
export interface WorkflowJob {
    name: string;
    'runs-on'?: string;
    steps: Array<ActionStep>;
    hide_in_menu?: boolean;
}
export interface WorkflowDefinition {
    on: {
        [trigger: string]: string;
    };
    jobs: {
        [key: string]: WorkflowJob;
    };
}
export declare const DEFAULT_WORKFLOW: WorkflowDefinition;
export declare function migrateLegacy(actionDefs: ActionDefinitionLegacy[]): WorkflowDefinition;
export declare function convertActionYaml(actionYaml: string): Promise<WorkflowDefinition>;
export declare class ActionRunnerContainer extends Container {
    private logger;
    private generatedFileService;
    private userConfigService;
    private tempFileService;
    private isErr;
    init(engine: ContainerEngine): Promise<void>;
    mount3(fileService: FileContentService, destFileService: FileContentService, tempFileService: FileContentService): Promise<void>;
    run(driveId: FileId): Promise<void>;
    destroy(): Promise<void>;
    private payloadToEnv;
    failed(): boolean;
}
//# sourceMappingURL=ActionRunnerContainer.d.ts.map