import { Command } from '@oclif/core';
import type { getAppWithArch } from '../../utils/helpers';
import type { ComposeOpts } from '../../utils/compose-types';
import type { BuildOpts } from '../../utils/docker';
export default class DeployCmd extends Command {
    static description: string;
    static examples: string[];
    static args: {
        fleet: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
        image: import("@oclif/core/lib/interfaces").Arg<string | undefined, Record<string, unknown>>;
    };
    static flags: {
        docker: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        dockerHost: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        dockerPort: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        ca: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        cert: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        key: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        tag: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        buildArg: import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        'cache-from': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        nocache: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        pull: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        squash: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        emulated: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        dockerfile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        nologs: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        'multi-dockerignore': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        'noparent-check': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        'registry-secrets': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        'noconvert-eol': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        projectName: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        source: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        build: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        nologupload: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        'release-tag': import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        draft: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        note: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
    };
    static authenticated: boolean;
    static primary: boolean;
    run(): Promise<void>;
    deployProject(docker: import('dockerode'), logger: import('../../utils/logger'), composeOpts: ComposeOpts, opts: {
        app: Awaited<ReturnType<typeof getAppWithArch>>;
        appName: string;
        image?: string;
        dockerfilePath?: string;
        shouldPerformBuild: boolean;
        shouldUploadLogs: boolean;
        buildEmulated: boolean;
        buildOpts: BuildOpts;
        createAsDraft: boolean;
    }): Promise<Pick<{
        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
        id: import("@balena/sbvr-types").Types["Integer"]["Read"];
        belongs_to__application: {
            __id: import("balena-sdk").Application["Read"]["id"];
        } | [import("balena-sdk").Application["Read"]];
        commit: import("@balena/sbvr-types").Types["Short Text"]["Read"];
        composition: import("@balena/sbvr-types").Types["JSON"]["Read"];
        status: import("@balena/sbvr-types").Types["Short Text"]["Read"];
        source: import("@balena/sbvr-types").Types["Short Text"]["Read"];
        build_log: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
        is_invalidated: import("@balena/sbvr-types").Types["Boolean"]["Read"];
        start_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"];
        end_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
        update_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"];
        release_version: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
        contract: import("@balena/sbvr-types").Types["JSON"]["Read"] | null;
        is_passing_tests: import("@balena/sbvr-types").Types["Boolean"]["Read"];
        is_finalized_at__date: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
        phase: "next" | "current" | "sunset" | "end-of-life" | null;
        is_final: import("@balena/sbvr-types").Types["Boolean"]["Read"];
        semver: import("@balena/sbvr-types").Types["Short Text"]["Read"];
        semver_major: import("@balena/sbvr-types").Types["Integer"]["Read"];
        semver_minor: import("@balena/sbvr-types").Types["Integer"]["Read"];
        semver_patch: import("@balena/sbvr-types").Types["Integer"]["Read"];
        semver_prerelease: import("@balena/sbvr-types").Types["Short Text"]["Read"];
        semver_build: import("@balena/sbvr-types").Types["Short Text"]["Read"];
        variant: import("@balena/sbvr-types").Types["Short Text"]["Read"];
        revision: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
        raw_version: import("@balena/sbvr-types").Types["Short Text"]["Read"];
        version: import("@balena/sbvr-types").Types["JSON"]["Read"];
        known_issue_list: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
        note: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
        invalidation_reason: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
        is_created_by__user: {
            __id: import("balena-sdk").User["Read"]["id"];
        } | [import("balena-sdk").User["Read"]] | [] | null;
        release__has__tag_key?: Array<import("balena-sdk").ReleaseTag["Read"]>;
        release_tag?: Array<import("balena-sdk").ReleaseTag["Read"]>;
        release__has__asset_key?: Array<import("balena-sdk").ReleaseAsset["Read"]>;
        release_asset?: Array<import("balena-sdk").ReleaseAsset["Read"]>;
        image__is_part_of__release?: Array<import("balena-sdk").ImageIsPartOfRelease["Read"]>;
        release_image?: Array<import("balena-sdk").ImageIsPartOfRelease["Read"]>;
        contains__image?: Array<import("balena-sdk").ImageIsPartOfRelease["Read"]>;
        should_be_running_on__application?: Array<import("balena-sdk").Application["Read"]>;
        should_be_running_on__device?: Array<import("balena-sdk").Device["Read"]>;
        is_running_on__device?: Array<import("balena-sdk").Device["Read"]>;
        is_pinned_to__device?: Array<import("balena-sdk").Device["Read"]>;
        should_operate__device?: Array<import("balena-sdk").Device["Read"]>;
        should_manage__device?: Array<import("balena-sdk").Device["Read"]>;
        provides__device__installs__image?: Array<import("balena-sdk").ImageInstall["Read"]>;
        provides__image_install?: Array<import("balena-sdk").ImageInstall["Read"]>;
    }, "id" | "commit">>;
}
