import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * This data source provides details about a specific Maintenance Window resource in Oracle Cloud Infrastructure Stack Monitoring service.
 *
 * Get maintenance window for the given identifier [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testMaintenanceWindow = oci.stackmonitoring.getMaintenanceWindow({
 *     maintenanceWindowId: testMaintenanceWindowOciStackMonitoringMaintenanceWindow.id,
 * });
 * ```
 */
export declare function getMaintenanceWindow(args: GetMaintenanceWindowArgs, opts?: pulumi.InvokeOptions): Promise<GetMaintenanceWindowResult>;
/**
 * A collection of arguments for invoking getMaintenanceWindow.
 */
export interface GetMaintenanceWindowArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of maintenance window.
     */
    maintenanceWindowId: string;
}
/**
 * A collection of values returned by getMaintenanceWindow.
 */
export interface GetMaintenanceWindowResult {
    /**
     * Compartment Identifier [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).
     */
    readonly compartmentId: string;
    /**
     * Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
     */
    readonly definedTags: {
        [key: string]: string;
    };
    /**
     * Maintenance Window description.
     */
    readonly description: string;
    /**
     * Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}`
     */
    readonly freeformTags: {
        [key: string]: string;
    };
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of maintenance window.
     */
    readonly id: string;
    /**
     * Lifecycle Details of the Maintenance Window.
     */
    readonly lifecycleDetails: string;
    readonly maintenanceWindowId: string;
    /**
     * Name of the monitored resource
     */
    readonly name: string;
    /**
     * List of resource Ids which are part of the Maintenance Window
     */
    readonly resources: outputs.StackMonitoring.GetMaintenanceWindowResource[];
    /**
     * List of resource details that are part of the Maintenance Window.
     */
    readonly resourcesDetails: outputs.StackMonitoring.GetMaintenanceWindowResourcesDetail[];
    /**
     * Schedule information of the Maintenance Window
     */
    readonly schedules: outputs.StackMonitoring.GetMaintenanceWindowSchedule[];
    /**
     * Lifecycle state of the monitored resource.
     */
    readonly state: string;
    /**
     * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
     */
    readonly systemTags: {
        [key: string]: string;
    };
    /**
     * The time the the maintenance window was created. An RFC3339 formatted datetime string
     */
    readonly timeCreated: string;
    /**
     * The time the the mainteance window was updated. An RFC3339 formatted datetime string
     */
    readonly timeUpdated: string;
}
/**
 * This data source provides details about a specific Maintenance Window resource in Oracle Cloud Infrastructure Stack Monitoring service.
 *
 * Get maintenance window for the given identifier [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testMaintenanceWindow = oci.stackmonitoring.getMaintenanceWindow({
 *     maintenanceWindowId: testMaintenanceWindowOciStackMonitoringMaintenanceWindow.id,
 * });
 * ```
 */
export declare function getMaintenanceWindowOutput(args: GetMaintenanceWindowOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetMaintenanceWindowResult>;
/**
 * A collection of arguments for invoking getMaintenanceWindow.
 */
export interface GetMaintenanceWindowOutputArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of maintenance window.
     */
    maintenanceWindowId: pulumi.Input<string>;
}
//# sourceMappingURL=getMaintenanceWindow.d.ts.map