import * as pulumi from "@pulumi/pulumi";
/**
 * This data source provides details about a specific Security Policy resource in Oracle Cloud Infrastructure Cloud Guard service.
 *
 * Returns a security zone policy (SecurityPolicy resource), identified by its unique ID
 * (securityPolicyId). When a policy is enabled in a security zone, then any action in
 * the zone that attempts to violate that policy is blocked.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testSecurityPolicy = oci.cloudguard.getSecurityPolicy({
 *     securityPolicyId: testSecurityPolicyOciCloudGuardSecurityPolicy.id,
 * });
 * ```
 */
export declare function getSecurityPolicy(args: GetSecurityPolicyArgs, opts?: pulumi.InvokeOptions): Promise<GetSecurityPolicyResult>;
/**
 * A collection of arguments for invoking getSecurityPolicy.
 */
export interface GetSecurityPolicyArgs {
    /**
     * The unique identifier of the security zone policy. (`SecurityPolicy`)
     */
    securityPolicyId: string;
}
/**
 * A collection of values returned by getSecurityPolicy.
 */
export interface GetSecurityPolicyResult {
    /**
     * The category of the security policy
     */
    readonly category: string;
    /**
     * The OCID of the security policy's compartment
     */
    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;
    };
    /**
     * The security policy's description
     */
    readonly description: string;
    /**
     * The security policy's display name
     */
    readonly displayName: 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;
    };
    /**
     * A shorter version of the security policy's name
     */
    readonly friendlyName: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * A message describing the current state in more detail. For example, this can be used to provide actionable information for a resource in a `Failed` state.
     */
    readonly lifecycleDetails: string;
    /**
     * The owner of the security policy
     */
    readonly owner: string;
    readonly securityPolicyId: string;
    /**
     * The list of services that the security policy protects
     */
    readonly services: string[];
    /**
     * The current lifecycle state of the security policy
     */
    readonly state: string;
    /**
     * The time the security policy was created. An RFC3339 formatted datetime string.
     */
    readonly timeCreated: string;
    /**
     * The time the security policy was last updated. An RFC3339 formatted datetime string.
     */
    readonly timeUpdated: string;
}
/**
 * This data source provides details about a specific Security Policy resource in Oracle Cloud Infrastructure Cloud Guard service.
 *
 * Returns a security zone policy (SecurityPolicy resource), identified by its unique ID
 * (securityPolicyId). When a policy is enabled in a security zone, then any action in
 * the zone that attempts to violate that policy is blocked.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testSecurityPolicy = oci.cloudguard.getSecurityPolicy({
 *     securityPolicyId: testSecurityPolicyOciCloudGuardSecurityPolicy.id,
 * });
 * ```
 */
export declare function getSecurityPolicyOutput(args: GetSecurityPolicyOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetSecurityPolicyResult>;
/**
 * A collection of arguments for invoking getSecurityPolicy.
 */
export interface GetSecurityPolicyOutputArgs {
    /**
     * The unique identifier of the security zone policy. (`SecurityPolicy`)
     */
    securityPolicyId: pulumi.Input<string>;
}
//# sourceMappingURL=getSecurityPolicy.d.ts.map