import { Message } from "../../abstractions/message";
import { BaseData, ICommand, User } from "../../utils/types";
export declare namespace plannerCommand {
    class CreateDeployment extends Message implements ICommand {
        CreatedAt: Date;
        StartedAt: Date;
        constructor(data: BaseData & {
            name: string;
            startedAt: Date;
        });
    }
    class AttachRelease extends Message implements ICommand {
        ReleaseId?: string;
        Name: string;
        CreatedAt: Date;
        StartedAt: Date;
        User: User;
        Service: string;
        constructor(data: BaseData & {
            name: string;
            releaseId?: string;
            startedAt: Date;
            user: User;
            service: string;
        });
    }
    class EnqueueDeployment extends Message implements ICommand {
        DeploymentId: string;
        constructor(data: BaseData & {
            deploymentId: string;
        });
    }
    class CancelDeployment extends Message implements ICommand {
        DeploymentId: string;
        Reason: string;
        constructor(data: BaseData & {
            deploymentId: string;
            reason: string;
        });
    }
    class StartDeployment extends Message implements ICommand {
        DeploymentId: string;
        ProviderId?: string;
        constructor(data: BaseData & {
            deploymentId: string;
            providerId?: string;
        });
    }
    class FinishDeployment extends Message implements ICommand {
        ProviderId: string;
        Success: boolean;
        constructor(data: BaseData & {
            providerId: string;
            success: boolean;
        });
    }
    class CheckPublishTimeout extends Message implements ICommand {
        ReleaseId: string;
        constructor(data: BaseData & {
            releaseId: string;
        });
    }
    class CheckInqueueRelease extends Message implements ICommand {
        ReleaseId: string;
        constructor(data: BaseData & {
            releaseId: string;
        });
    }
}
