import * as pulumi from "@pulumi/pulumi";
import * as outputs from "./types/output";
/**
 * Use this data source to get information about a Wavefront alert by its ID.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as wavefront from "@pulumi/wavefront";
 *
 * // Get the information about the alert.
 * const example = wavefront.getAlert({
 *     id: "alert-id",
 * });
 * ```
 */
export declare function getAlert(args: GetAlertArgs, opts?: pulumi.InvokeOptions): Promise<GetAlertResult>;
/**
 * A collection of arguments for invoking getAlert.
 */
export interface GetAlertArgs {
    /**
     * The ID associated with the alert data to be fetched.
     */
    id: string;
    /**
     * A comma-separated list of the email addresses or integration endpoints (such as PagerDuty or webhook) to notify when the alert status changes. Multiple target types can be in the list.
     */
    targets?: {
        [key: string]: string;
    };
}
/**
 * A collection of values returned by getAlert.
 */
export interface GetAlertResult {
    /**
     * User-supplied additional explanatory information about this alert.
     */
    readonly additionalInformation: string;
    /**
     * A set of user-supplied dashboard and parameters to create dashboard links for triaging alerts.
     */
    readonly alertTriageDashboards: outputs.GetAlertAlertTriageDashboard[];
    /**
     * The type of alert in Wavefront.
     */
    readonly alertType: string;
    /**
     * A list of users or groups that can modify the alert.
     */
    readonly canModifies: string[];
    /**
     * A list of users or groups that can view the alert.
     */
    readonly canViews: string[];
    /**
     * A Wavefront query that is evaluated at regular intervals (default is 1 minute). The alert fires and notifications are triggered when a data series matching this query evaluates to a non-zero value for a set number of consecutive minutes.
     */
    readonly condition: string;
    /**
     * A map of severity to condition for which this alert will trigger.
     */
    readonly conditions: {
        [key: string]: string;
    };
    /**
     * A second query the results of which are displayed in the alert user interface instead of the condition query.
     */
    readonly displayExpression: string;
    /**
     * A Boolean flag to enable real-time evaluation.
     */
    readonly evaluateRealtimeData: boolean;
    /**
     * A list of failing host label pairs.
     */
    readonly failingHostLabelPairs: outputs.GetAlertFailingHostLabelPair[];
    /**
     * The ID of the alert in Wavefront.
     */
    readonly id: string;
    /**
     * A list of in maintenance host label pairs.
     */
    readonly inMaintenanceHostLabelPairs: outputs.GetAlertInMaintenanceHostLabelPair[];
    /**
     * A Boolean flag indicating whether to include obsolete metrics or not.
     */
    readonly includeObsoleteMetrics: boolean;
    /**
     * The number of consecutive minutes that a series matching the condition query must evaluate to "true" (non-zero value) before the alert fires.
     */
    readonly minutes: number;
    /**
     * The name of the alert as it is displayed in Wavefront.
     */
    readonly name: string;
    /**
     * How often to re-trigger a continually failing alert.
     */
    readonly notificationResendFrequencyMinutes: number;
    /**
     * The specified query is executed every `processRateMinutes` minutes.
     */
    readonly processRateMinutes: number;
    /**
     * The number of consecutive minutes that a firing series matching the condition query must evaluate to "false" (zero value) before the alert resolves.
     */
    readonly resolveAfterMinutes: number;
    /**
     * A list of user-supplied runbook links for this alert.
     */
    readonly runbookLinks: string[];
    /**
     * The severity of the alert.
     */
    readonly severity: string;
    readonly severityLists: string[];
    /**
     * The status of the alert.
     */
    readonly statuses: string[];
    /**
     * A set of tags assigned to the alert.
     */
    readonly tags: string[];
    /**
     * An email address or integration endpoint (such as PagerDuty or webhook) to notify when the alert status changes.
     */
    readonly target: string;
    /**
     * A comma-separated list of the email addresses or integration endpoints (such as PagerDuty or webhook) to notify when the alert status changes. Multiple target types can be in the list.
     */
    readonly targets?: {
        [key: string]: string;
    };
}
/**
 * Use this data source to get information about a Wavefront alert by its ID.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as wavefront from "@pulumi/wavefront";
 *
 * // Get the information about the alert.
 * const example = wavefront.getAlert({
 *     id: "alert-id",
 * });
 * ```
 */
export declare function getAlertOutput(args: GetAlertOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetAlertResult>;
/**
 * A collection of arguments for invoking getAlert.
 */
export interface GetAlertOutputArgs {
    /**
     * The ID associated with the alert data to be fetched.
     */
    id: pulumi.Input<string>;
    /**
     * A comma-separated list of the email addresses or integration endpoints (such as PagerDuty or webhook) to notify when the alert status changes. Multiple target types can be in the list.
     */
    targets?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    }>;
}
