import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
export declare class WebhookNotification extends pulumi.CustomResource {
    /**
     * Get an existing WebhookNotification 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?: WebhookNotificationState, opts?: pulumi.CustomResourceOptions): WebhookNotification;
    /**
     * Returns true if the given object is an instance of WebhookNotification.  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 WebhookNotification;
    /**
     * The configuration is enabled (`true`) or disabled (`false`)
     */
    readonly active: pulumi.Output<boolean>;
    /**
     * A list of the additional HTTP headers
     */
    readonly headers: pulumi.Output<outputs.WebhookNotificationHeaders | undefined>;
    /**
     * Accept any, including self-signed and invalid, SSL certificate (`true`) or only trusted (`false`) certificates
     */
    readonly insecure: pulumi.Output<boolean | undefined>;
    /**
     * The ID of these settings when referred to from resources requiring the REST API V1 keys
     */
    readonly legacyId: pulumi.Output<string>;
    /**
     * The name of the notification configuration
     */
    readonly name: pulumi.Output<string>;
    /**
     * Send email if problem is closed
     */
    readonly notifyClosedProblems: pulumi.Output<boolean | undefined>;
    /**
     * Call webhook if new events merge into existing problems
     */
    readonly notifyEventMerges: pulumi.Output<boolean | undefined>;
    /**
     * To authenticate your integration, the OAuth 2.0 *Client Credentials* Flow (Grant Type) is used. For details see [Client Credentials Flow](https://dt-url.net/ym22wsm)).
     */
    readonly oauth2Credentials: pulumi.Output<outputs.WebhookNotificationOauth2Credentials | undefined>;
    /**
     * The content of the notification message. You can use the following placeholders:  * `{ImpactedEntities}`: Details about the entities impacted by the problem in form of a JSON array.  * `{ImpactedEntity}`: The entity impacted by the problem or *X* impacted entities.  * `{PID}`: The ID of the reported problem.  * `{ProblemDetailsHTML}`: All problem event details, including root cause, as an HTML-formatted string.  * `{ProblemDetailsJSON}`: All problem event details, including root cause, as a JSON object.  * `{ProblemDetailsMarkdown}`: All problem event details, including root cause, as a [Markdown-formatted](https://www.markdownguide.org/cheat-sheet/) string.  * `{ProblemDetailsText}`: All problem event details, including root cause, as a text-formatted string.  * `{ProblemID}`: The display number of the reported problem.  * `{ProblemImpact}`: The [impact level](https://www.dynatrace.com/support/help/shortlink/impact-analysis) of the problem. Possible values are `APPLICATION`, `SERVICE`, and `INFRASTRUCTURE`.  * `{ProblemSeverity}`: The [severity level](https://www.dynatrace.com/support/help/shortlink/event-types) of the problem. Possible values are `AVAILABILITY`, `ERROR`, `PERFORMANCE`, `RESOURCE_CONTENTION`, and `CUSTOM_ALERT`.  * `{ProblemTitle}`: A short description of the problem.  * `{ProblemURL}`: The URL of the problem within Dynatrace.  * `{State}`: The state of the problem. Possible values are `OPEN` and `RESOLVED`.  * `{Tags}`: The list of tags that are defined for all impacted entities, separated by commas
     */
    readonly payload: pulumi.Output<string>;
    /**
     * The ID of the associated alerting profile
     */
    readonly profile: pulumi.Output<string>;
    /**
     * The secret URL of the webhook endpoint.
     */
    readonly secretUrl: pulumi.Output<string | undefined>;
    /**
     * The URL of the WebHook endpoint
     */
    readonly url: pulumi.Output<string | undefined>;
    /**
     * Secret webhook URL
     */
    readonly urlContainsSecret: pulumi.Output<boolean | undefined>;
    /**
     * Use OAuth 2.0 for authentication
     */
    readonly useOauth2: pulumi.Output<boolean | undefined>;
    /**
     * Create a WebhookNotification 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: WebhookNotificationArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering WebhookNotification resources.
 */
export interface WebhookNotificationState {
    /**
     * The configuration is enabled (`true`) or disabled (`false`)
     */
    active?: pulumi.Input<boolean>;
    /**
     * A list of the additional HTTP headers
     */
    headers?: pulumi.Input<inputs.WebhookNotificationHeaders>;
    /**
     * Accept any, including self-signed and invalid, SSL certificate (`true`) or only trusted (`false`) certificates
     */
    insecure?: pulumi.Input<boolean>;
    /**
     * The ID of these settings when referred to from resources requiring the REST API V1 keys
     */
    legacyId?: pulumi.Input<string>;
    /**
     * The name of the notification configuration
     */
    name?: pulumi.Input<string>;
    /**
     * Send email if problem is closed
     */
    notifyClosedProblems?: pulumi.Input<boolean>;
    /**
     * Call webhook if new events merge into existing problems
     */
    notifyEventMerges?: pulumi.Input<boolean>;
    /**
     * To authenticate your integration, the OAuth 2.0 *Client Credentials* Flow (Grant Type) is used. For details see [Client Credentials Flow](https://dt-url.net/ym22wsm)).
     */
    oauth2Credentials?: pulumi.Input<inputs.WebhookNotificationOauth2Credentials>;
    /**
     * The content of the notification message. You can use the following placeholders:  * `{ImpactedEntities}`: Details about the entities impacted by the problem in form of a JSON array.  * `{ImpactedEntity}`: The entity impacted by the problem or *X* impacted entities.  * `{PID}`: The ID of the reported problem.  * `{ProblemDetailsHTML}`: All problem event details, including root cause, as an HTML-formatted string.  * `{ProblemDetailsJSON}`: All problem event details, including root cause, as a JSON object.  * `{ProblemDetailsMarkdown}`: All problem event details, including root cause, as a [Markdown-formatted](https://www.markdownguide.org/cheat-sheet/) string.  * `{ProblemDetailsText}`: All problem event details, including root cause, as a text-formatted string.  * `{ProblemID}`: The display number of the reported problem.  * `{ProblemImpact}`: The [impact level](https://www.dynatrace.com/support/help/shortlink/impact-analysis) of the problem. Possible values are `APPLICATION`, `SERVICE`, and `INFRASTRUCTURE`.  * `{ProblemSeverity}`: The [severity level](https://www.dynatrace.com/support/help/shortlink/event-types) of the problem. Possible values are `AVAILABILITY`, `ERROR`, `PERFORMANCE`, `RESOURCE_CONTENTION`, and `CUSTOM_ALERT`.  * `{ProblemTitle}`: A short description of the problem.  * `{ProblemURL}`: The URL of the problem within Dynatrace.  * `{State}`: The state of the problem. Possible values are `OPEN` and `RESOLVED`.  * `{Tags}`: The list of tags that are defined for all impacted entities, separated by commas
     */
    payload?: pulumi.Input<string>;
    /**
     * The ID of the associated alerting profile
     */
    profile?: pulumi.Input<string>;
    /**
     * The secret URL of the webhook endpoint.
     */
    secretUrl?: pulumi.Input<string>;
    /**
     * The URL of the WebHook endpoint
     */
    url?: pulumi.Input<string>;
    /**
     * Secret webhook URL
     */
    urlContainsSecret?: pulumi.Input<boolean>;
    /**
     * Use OAuth 2.0 for authentication
     */
    useOauth2?: pulumi.Input<boolean>;
}
/**
 * The set of arguments for constructing a WebhookNotification resource.
 */
export interface WebhookNotificationArgs {
    /**
     * The configuration is enabled (`true`) or disabled (`false`)
     */
    active: pulumi.Input<boolean>;
    /**
     * A list of the additional HTTP headers
     */
    headers?: pulumi.Input<inputs.WebhookNotificationHeaders>;
    /**
     * Accept any, including self-signed and invalid, SSL certificate (`true`) or only trusted (`false`) certificates
     */
    insecure?: pulumi.Input<boolean>;
    /**
     * The ID of these settings when referred to from resources requiring the REST API V1 keys
     */
    legacyId?: pulumi.Input<string>;
    /**
     * The name of the notification configuration
     */
    name?: pulumi.Input<string>;
    /**
     * Send email if problem is closed
     */
    notifyClosedProblems?: pulumi.Input<boolean>;
    /**
     * Call webhook if new events merge into existing problems
     */
    notifyEventMerges?: pulumi.Input<boolean>;
    /**
     * To authenticate your integration, the OAuth 2.0 *Client Credentials* Flow (Grant Type) is used. For details see [Client Credentials Flow](https://dt-url.net/ym22wsm)).
     */
    oauth2Credentials?: pulumi.Input<inputs.WebhookNotificationOauth2Credentials>;
    /**
     * The content of the notification message. You can use the following placeholders:  * `{ImpactedEntities}`: Details about the entities impacted by the problem in form of a JSON array.  * `{ImpactedEntity}`: The entity impacted by the problem or *X* impacted entities.  * `{PID}`: The ID of the reported problem.  * `{ProblemDetailsHTML}`: All problem event details, including root cause, as an HTML-formatted string.  * `{ProblemDetailsJSON}`: All problem event details, including root cause, as a JSON object.  * `{ProblemDetailsMarkdown}`: All problem event details, including root cause, as a [Markdown-formatted](https://www.markdownguide.org/cheat-sheet/) string.  * `{ProblemDetailsText}`: All problem event details, including root cause, as a text-formatted string.  * `{ProblemID}`: The display number of the reported problem.  * `{ProblemImpact}`: The [impact level](https://www.dynatrace.com/support/help/shortlink/impact-analysis) of the problem. Possible values are `APPLICATION`, `SERVICE`, and `INFRASTRUCTURE`.  * `{ProblemSeverity}`: The [severity level](https://www.dynatrace.com/support/help/shortlink/event-types) of the problem. Possible values are `AVAILABILITY`, `ERROR`, `PERFORMANCE`, `RESOURCE_CONTENTION`, and `CUSTOM_ALERT`.  * `{ProblemTitle}`: A short description of the problem.  * `{ProblemURL}`: The URL of the problem within Dynatrace.  * `{State}`: The state of the problem. Possible values are `OPEN` and `RESOLVED`.  * `{Tags}`: The list of tags that are defined for all impacted entities, separated by commas
     */
    payload: pulumi.Input<string>;
    /**
     * The ID of the associated alerting profile
     */
    profile: pulumi.Input<string>;
    /**
     * The secret URL of the webhook endpoint.
     */
    secretUrl?: pulumi.Input<string>;
    /**
     * The URL of the WebHook endpoint
     */
    url?: pulumi.Input<string>;
    /**
     * Secret webhook URL
     */
    urlContainsSecret?: pulumi.Input<boolean>;
    /**
     * Use OAuth 2.0 for authentication
     */
    useOauth2?: pulumi.Input<boolean>;
}
