import type { IController } from 'angular';
import type { IModalService } from 'angular-ui-bootstrap';
export interface IWebhookStageViewState {
    waitForCompletion?: boolean;
    statusUrlResolution: string;
    failFastStatusCodes: string;
    retryStatusCodes: string;
    signalCancellation?: boolean;
}
export interface IWebhookStageCommand {
    errorMessage?: string;
    invalid?: boolean;
    payloadJSON: string;
}
export interface ICustomHeader {
    key: string;
    value: string;
}
export interface IWebhookParameter {
    name: string;
    label: string;
    description?: string;
    type: string;
    defaultValue?: string;
}
export declare class WebhookStage implements IController {
    stage: any;
    private $uibModal;
    command: IWebhookStageCommand;
    cancelCommand: IWebhookStageCommand;
    viewState: IWebhookStageViewState;
    methods: string[];
    preconfiguredProperties: string[];
    noUserConfigurableFields: boolean;
    parameters: IWebhookParameter[];
    static $inject: string[];
    constructor(stage: any, $uibModal: IModalService);
    updatePayload(): void;
    updateCancelPayload(): void;
    private static checkAndGetPayload;
    waitForCompletionChanged(): void;
    signalCancellationChanged(): void;
    statusUrlResolutionChanged(): void;
    failFastCodesChanged(): void;
    retryCodesChanged(): void;
    customHeaderCount(): number;
    removeCustomHeader(key: string): void;
    addCustomHeader(): void;
    displayField(field: string): boolean;
}
export declare const WEBHOOK_STAGE = "spinnaker.core.pipeline.stage.webhookStage";
