import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
export declare class IncomingWebhook extends pulumi.CustomResource {
    /**
     * Get an existing IncomingWebhook resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param state Any extra arguments used during the lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, state?: IncomingWebhookState, opts?: pulumi.CustomResourceOptions): IncomingWebhook;
    /**
     * Returns true if the given object is an instance of IncomingWebhook.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is IncomingWebhook;
    /**
     * When acknowledging an incident, how to extract an alert id, a unique alert identifier which will be used to acknowledge
     * and resolve incidents.
     */
    readonly acknowledgedAlertIdField: pulumi.Output<outputs.IncomingWebhookAcknowledgedAlertIdField | undefined>;
    /**
     * Should an incident be acknowledged for all webhooks, those satisfying all acknowledged_rules, or those satisfying any of
     * them. Valid values are unused, all, or any
     */
    readonly acknowledgedRuleType: pulumi.Output<string>;
    /**
     * An array of rules to match to acknowledge an incident.
     */
    readonly acknowledgedRules: pulumi.Output<outputs.IncomingWebhookAcknowledgedRule[] | undefined>;
    /**
     * Whether to call when a new incident is created.
     */
    readonly call: pulumi.Output<boolean>;
    /**
     * A field describing how to extract an incident cause, used as a short description shared with the team member on-call.
     */
    readonly causeField: pulumi.Output<outputs.IncomingWebhookCauseField | undefined>;
    /**
     * The time when this incoming webhook was created.
     */
    readonly createdAt: pulumi.Output<string>;
    /**
     * Whether to send a critical push notification that ignores the mute switch and Do not Disturb mode when a new incident is
     * created.
     */
    readonly criticalAlert: pulumi.Output<boolean>;
    /**
     * Whether to send an email when a new incident is created.
     */
    readonly email: pulumi.Output<boolean>;
    /**
     * The name of this incoming webhook.
     */
    readonly name: pulumi.Output<string>;
    /**
     * An array of additional fields, which will be extracted when acknowledging an incident.
     */
    readonly otherAcknowledgedFields: pulumi.Output<outputs.IncomingWebhookOtherAcknowledgedField[] | undefined>;
    /**
     * An array of additional fields, which will be extracted when resolving an incident.
     */
    readonly otherResolvedFields: pulumi.Output<outputs.IncomingWebhookOtherResolvedField[] | undefined>;
    /**
     * An array of additional fields, which will be extracted when starting an incident.
     */
    readonly otherStartedFields: pulumi.Output<outputs.IncomingWebhookOtherStartedField[] | undefined>;
    /**
     * Set to true to pause monitoring - we won't notify you about downtime. Set to false to resume monitoring.
     */
    readonly paused: pulumi.Output<boolean>;
    /**
     * ID of the escalation policy associated with the incoming webhook.
     */
    readonly policyId: pulumi.Output<string>;
    /**
     * Whether to send a push notification when a new incident is created.
     */
    readonly push: pulumi.Output<boolean>;
    /**
     * How long the integration must be up to automatically mark an incident as resolved after being down.
     */
    readonly recoveryPeriod: pulumi.Output<number>;
    /**
     * When resolving an incident, how to extract an alert id, a unique alert identifier which will be used to acknowledge and
     * resolve incidents.
     */
    readonly resolvedAlertIdField: pulumi.Output<outputs.IncomingWebhookResolvedAlertIdField | undefined>;
    /**
     * Should an incident be resolved for all webhooks, those satisfying all resolved_rules, or those satisfying any of them.
     * Valid values are unused, all, or any
     */
    readonly resolvedRuleType: pulumi.Output<string>;
    /**
     * An array of rules to match to resolved an incident.
     */
    readonly resolvedRules: pulumi.Output<outputs.IncomingWebhookResolvedRule[] | undefined>;
    /**
     * Sample request body the webhook. Used only to make the configuration easier.
     */
    readonly sampleBody: pulumi.Output<string>;
    /**
     * Sample request HTTP headers the webhook (separated by a newline). Used only to make the configuration easier.
     */
    readonly sampleHeaders: pulumi.Output<string>;
    /**
     * Sample query string of the webhook (without the leading ?). Used only to make the configuration easier.
     */
    readonly sampleQueryString: pulumi.Output<string>;
    /**
     * Whether to send an SMS when a new incident is created.
     */
    readonly sms: pulumi.Output<boolean>;
    /**
     * When starting an incident, how to extract an alert id, a unique alert identifier which will be used to acknowledge and
     * resolve incidents.
     */
    readonly startedAlertIdField: pulumi.Output<outputs.IncomingWebhookStartedAlertIdField | undefined>;
    /**
     * Should an incident be started for all webhooks, those satisfying all started_rules, or those satisfying any of them.
     * Valid values are unused, all, or any
     */
    readonly startedRuleType: pulumi.Output<string>;
    /**
     * An array of rules to match to start a new incident.
     */
    readonly startedRules: pulumi.Output<outputs.IncomingWebhookStartedRule[] | undefined>;
    /**
     * Used to specify the team the resource should be created in when using global tokens.
     */
    readonly teamName: pulumi.Output<string | undefined>;
    /**
     * How long to wait before escalating the incident alert to the team. Leave blank to disable escalating to the entire team.
     */
    readonly teamWait: pulumi.Output<number>;
    /**
     * An optional field describing how to extract a customized incident title.
     */
    readonly titleField: pulumi.Output<outputs.IncomingWebhookTitleField | undefined>;
    /**
     * The time when this incoming webhook was updated.
     */
    readonly updatedAt: pulumi.Output<string>;
    /**
     * The url at which we expect to receive the webhook.
     */
    readonly url: pulumi.Output<string>;
    /**
     * Create a IncomingWebhook resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: IncomingWebhookArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering IncomingWebhook resources.
 */
export interface IncomingWebhookState {
    /**
     * When acknowledging an incident, how to extract an alert id, a unique alert identifier which will be used to acknowledge
     * and resolve incidents.
     */
    acknowledgedAlertIdField?: pulumi.Input<inputs.IncomingWebhookAcknowledgedAlertIdField>;
    /**
     * Should an incident be acknowledged for all webhooks, those satisfying all acknowledged_rules, or those satisfying any of
     * them. Valid values are unused, all, or any
     */
    acknowledgedRuleType?: pulumi.Input<string>;
    /**
     * An array of rules to match to acknowledge an incident.
     */
    acknowledgedRules?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookAcknowledgedRule>[]>;
    /**
     * Whether to call when a new incident is created.
     */
    call?: pulumi.Input<boolean>;
    /**
     * A field describing how to extract an incident cause, used as a short description shared with the team member on-call.
     */
    causeField?: pulumi.Input<inputs.IncomingWebhookCauseField>;
    /**
     * The time when this incoming webhook was created.
     */
    createdAt?: pulumi.Input<string>;
    /**
     * Whether to send a critical push notification that ignores the mute switch and Do not Disturb mode when a new incident is
     * created.
     */
    criticalAlert?: pulumi.Input<boolean>;
    /**
     * Whether to send an email when a new incident is created.
     */
    email?: pulumi.Input<boolean>;
    /**
     * The name of this incoming webhook.
     */
    name?: pulumi.Input<string>;
    /**
     * An array of additional fields, which will be extracted when acknowledging an incident.
     */
    otherAcknowledgedFields?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookOtherAcknowledgedField>[]>;
    /**
     * An array of additional fields, which will be extracted when resolving an incident.
     */
    otherResolvedFields?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookOtherResolvedField>[]>;
    /**
     * An array of additional fields, which will be extracted when starting an incident.
     */
    otherStartedFields?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookOtherStartedField>[]>;
    /**
     * Set to true to pause monitoring - we won't notify you about downtime. Set to false to resume monitoring.
     */
    paused?: pulumi.Input<boolean>;
    /**
     * ID of the escalation policy associated with the incoming webhook.
     */
    policyId?: pulumi.Input<string>;
    /**
     * Whether to send a push notification when a new incident is created.
     */
    push?: pulumi.Input<boolean>;
    /**
     * How long the integration must be up to automatically mark an incident as resolved after being down.
     */
    recoveryPeriod?: pulumi.Input<number>;
    /**
     * When resolving an incident, how to extract an alert id, a unique alert identifier which will be used to acknowledge and
     * resolve incidents.
     */
    resolvedAlertIdField?: pulumi.Input<inputs.IncomingWebhookResolvedAlertIdField>;
    /**
     * Should an incident be resolved for all webhooks, those satisfying all resolved_rules, or those satisfying any of them.
     * Valid values are unused, all, or any
     */
    resolvedRuleType?: pulumi.Input<string>;
    /**
     * An array of rules to match to resolved an incident.
     */
    resolvedRules?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookResolvedRule>[]>;
    /**
     * Sample request body the webhook. Used only to make the configuration easier.
     */
    sampleBody?: pulumi.Input<string>;
    /**
     * Sample request HTTP headers the webhook (separated by a newline). Used only to make the configuration easier.
     */
    sampleHeaders?: pulumi.Input<string>;
    /**
     * Sample query string of the webhook (without the leading ?). Used only to make the configuration easier.
     */
    sampleQueryString?: pulumi.Input<string>;
    /**
     * Whether to send an SMS when a new incident is created.
     */
    sms?: pulumi.Input<boolean>;
    /**
     * When starting an incident, how to extract an alert id, a unique alert identifier which will be used to acknowledge and
     * resolve incidents.
     */
    startedAlertIdField?: pulumi.Input<inputs.IncomingWebhookStartedAlertIdField>;
    /**
     * Should an incident be started for all webhooks, those satisfying all started_rules, or those satisfying any of them.
     * Valid values are unused, all, or any
     */
    startedRuleType?: pulumi.Input<string>;
    /**
     * An array of rules to match to start a new incident.
     */
    startedRules?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookStartedRule>[]>;
    /**
     * Used to specify the team the resource should be created in when using global tokens.
     */
    teamName?: pulumi.Input<string>;
    /**
     * How long to wait before escalating the incident alert to the team. Leave blank to disable escalating to the entire team.
     */
    teamWait?: pulumi.Input<number>;
    /**
     * An optional field describing how to extract a customized incident title.
     */
    titleField?: pulumi.Input<inputs.IncomingWebhookTitleField>;
    /**
     * The time when this incoming webhook was updated.
     */
    updatedAt?: pulumi.Input<string>;
    /**
     * The url at which we expect to receive the webhook.
     */
    url?: pulumi.Input<string>;
}
/**
 * The set of arguments for constructing a IncomingWebhook resource.
 */
export interface IncomingWebhookArgs {
    /**
     * When acknowledging an incident, how to extract an alert id, a unique alert identifier which will be used to acknowledge
     * and resolve incidents.
     */
    acknowledgedAlertIdField?: pulumi.Input<inputs.IncomingWebhookAcknowledgedAlertIdField>;
    /**
     * Should an incident be acknowledged for all webhooks, those satisfying all acknowledged_rules, or those satisfying any of
     * them. Valid values are unused, all, or any
     */
    acknowledgedRuleType: pulumi.Input<string>;
    /**
     * An array of rules to match to acknowledge an incident.
     */
    acknowledgedRules?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookAcknowledgedRule>[]>;
    /**
     * Whether to call when a new incident is created.
     */
    call?: pulumi.Input<boolean>;
    /**
     * A field describing how to extract an incident cause, used as a short description shared with the team member on-call.
     */
    causeField?: pulumi.Input<inputs.IncomingWebhookCauseField>;
    /**
     * Whether to send a critical push notification that ignores the mute switch and Do not Disturb mode when a new incident is
     * created.
     */
    criticalAlert?: pulumi.Input<boolean>;
    /**
     * Whether to send an email when a new incident is created.
     */
    email?: pulumi.Input<boolean>;
    /**
     * The name of this incoming webhook.
     */
    name?: pulumi.Input<string>;
    /**
     * An array of additional fields, which will be extracted when acknowledging an incident.
     */
    otherAcknowledgedFields?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookOtherAcknowledgedField>[]>;
    /**
     * An array of additional fields, which will be extracted when resolving an incident.
     */
    otherResolvedFields?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookOtherResolvedField>[]>;
    /**
     * An array of additional fields, which will be extracted when starting an incident.
     */
    otherStartedFields?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookOtherStartedField>[]>;
    /**
     * Set to true to pause monitoring - we won't notify you about downtime. Set to false to resume monitoring.
     */
    paused?: pulumi.Input<boolean>;
    /**
     * ID of the escalation policy associated with the incoming webhook.
     */
    policyId?: pulumi.Input<string>;
    /**
     * Whether to send a push notification when a new incident is created.
     */
    push?: pulumi.Input<boolean>;
    /**
     * How long the integration must be up to automatically mark an incident as resolved after being down.
     */
    recoveryPeriod?: pulumi.Input<number>;
    /**
     * When resolving an incident, how to extract an alert id, a unique alert identifier which will be used to acknowledge and
     * resolve incidents.
     */
    resolvedAlertIdField?: pulumi.Input<inputs.IncomingWebhookResolvedAlertIdField>;
    /**
     * Should an incident be resolved for all webhooks, those satisfying all resolved_rules, or those satisfying any of them.
     * Valid values are unused, all, or any
     */
    resolvedRuleType: pulumi.Input<string>;
    /**
     * An array of rules to match to resolved an incident.
     */
    resolvedRules?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookResolvedRule>[]>;
    /**
     * Whether to send an SMS when a new incident is created.
     */
    sms?: pulumi.Input<boolean>;
    /**
     * When starting an incident, how to extract an alert id, a unique alert identifier which will be used to acknowledge and
     * resolve incidents.
     */
    startedAlertIdField?: pulumi.Input<inputs.IncomingWebhookStartedAlertIdField>;
    /**
     * Should an incident be started for all webhooks, those satisfying all started_rules, or those satisfying any of them.
     * Valid values are unused, all, or any
     */
    startedRuleType: pulumi.Input<string>;
    /**
     * An array of rules to match to start a new incident.
     */
    startedRules?: pulumi.Input<pulumi.Input<inputs.IncomingWebhookStartedRule>[]>;
    /**
     * Used to specify the team the resource should be created in when using global tokens.
     */
    teamName?: pulumi.Input<string>;
    /**
     * How long to wait before escalating the incident alert to the team. Leave blank to disable escalating to the entire team.
     */
    teamWait?: pulumi.Input<number>;
    /**
     * An optional field describing how to extract a customized incident title.
     */
    titleField?: pulumi.Input<inputs.IncomingWebhookTitleField>;
}
