import { SchemaValues } from '@sprucelabs/schema';
import AbstractAction from '../../AbstractAction';
import { FeatureActionResponse } from '../../features.types';
declare const optionsSchema: {
    id: string;
    description: string;
    fields: {
        teamName: {
            type: "text";
            label: string;
            isRequired: false;
        };
        shouldRunSilently: {
            type: "boolean";
            isPrivate: true;
        };
        shouldBuildAndLint: {
            type: "boolean";
            defaultValue: true;
        };
        shouldRunTests: {
            type: "boolean";
            defaultValue: true;
        };
    };
};
type OptionsSchema = typeof optionsSchema;
type Options = SchemaValues<OptionsSchema>;
export default class DeployAction extends AbstractAction<OptionsSchema> {
    optionsSchema: {
        id: string;
        description: string;
        fields: {
            teamName: {
                type: "text";
                label: string;
                isRequired: false;
            };
            shouldRunSilently: {
                type: "boolean";
                isPrivate: true;
            };
            shouldBuildAndLint: {
                type: "boolean";
                defaultValue: true;
            };
            shouldRunTests: {
                type: "boolean";
                defaultValue: true;
            };
        };
    };
    commandAliases: string[];
    invocationMessage: string;
    execute(options: Options): Promise<FeatureActionResponse>;
    private assertRegisteredSkill;
    private deploy;
    private assertNoPendingGitChanges;
    private setupGitRemote;
    private setupProcFile;
    private setupGitRepo;
    assertLoggedInToHeroku(): Promise<void>;
    private assertDependencies;
    private runTests;
    private buildAndLint;
}
export {};
