import type { BaseArgs } from "../../core/program";
import { BaseProgram } from "../../core/program";
import { Command } from "../../core/config";
import { getHooks } from './hooks';
import { upload } from './upload';
import { Run } from './run';
export { getHooks };
export { upload, Run };
export type PublishArgs = BaseArgs & {
    endpoint: string;
    bucket: string;
    prefix: string;
    region: string;
    accessKeyId: string;
    secretAccessKey: string;
    hidden: string[];
};
export type PublishConfig = Pick<BaseArgs, 'input' | 'strict' | 'quiet'> & {
    endpoint: string;
    bucket: string;
    prefix: string;
    region: string;
    accessKeyId: string;
    secretAccessKey: string;
    hidden: string[];
};
export declare class Publish extends BaseProgram<PublishConfig, PublishArgs> {
    readonly name = "Publish";
    readonly command: Command;
    readonly options: import("../../core/config").ExtendedOption[];
    apply(program?: BaseProgram): void;
    action(): Promise<void>;
}
