import { GulpTask, Spawn, SpawnOptions } from '@codification/cutwater-build-core';
import { CliConfig } from '../types/CliConfig';
export interface SamCliOptions {
    help?: true;
    debug?: boolean;
    profile?: string;
    region?: string;
}
export interface SamCliTaskConfig<P> extends CliConfig<SamCliOptions, P> {
    spawn: Spawn;
}
export declare class SamCliTask<P> extends GulpTask<SamCliTaskConfig<P>, void> {
    protected readonly samCommand: string;
    protected readonly filteredParams: string[];
    constructor(taskName?: string, command?: string, defaultConfig?: Partial<SamCliTaskConfig<P>>);
    setConfig(taskConfig: Partial<SamCliTaskConfig<P>>): void;
    replaceConfig(taskConfig: SamCliTaskConfig<P>): void;
    setSpawnOptions(options: Partial<SpawnOptions>): void;
    replaceSpawnOptions(options: SpawnOptions): void;
    setOptions(options: Partial<SamCliOptions>): void;
    replaceOptions(options: SamCliOptions): void;
    setParameters(parameters: Partial<P>): void;
    replaceParameters(parameters: P): void;
    executeTask(): Promise<void>;
}
//# sourceMappingURL=SamCliTask.d.ts.map