import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Use this data source to retrieve a Cloud Identity policy.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as gcp from "@pulumi/gcp";
 *
 * const test = gcp.cloudidentity.getPolicy({
 *     name: "policies/{policy_id}",
 * });
 * export const policyCustomer = test.then(test => test.customer);
 * export const policyQueryQuery = test.then(test => test.policyQueries?.[0]?.query);
 * export const policyQueryOrgUnit = test.then(test => test.policyQueries?.[0]?.orgUnit);
 * export const policyQueryGroup = test.then(test => test.policyQueries?.[0]?.group);
 * export const policyQuerySortOrder = test.then(test => test.policyQueries?.[0]?.sortOrder);
 * export const policySetting = test.then(test => test.setting);
 * ```
 */
export declare function getPolicy(args: GetPolicyArgs, opts?: pulumi.InvokeOptions): Promise<GetPolicyResult>;
/**
 * A collection of arguments for invoking getPolicy.
 */
export interface GetPolicyArgs {
    /**
     * The resource name of the policy to retrieve. Format: `policies/{policy_id}`.
     */
    name: string;
}
/**
 * A collection of values returned by getPolicy.
 */
export interface GetPolicyResult {
    /**
     * The customer that the policy belongs to.
     */
    readonly customer: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The resource name of the policy.
     */
    readonly name: string;
    /**
     * A list containing the CEL query that defines which entities the policy applies to. Structure is documented below.
     */
    readonly policyQueries: outputs.cloudidentity.GetPolicyPolicyQuery[];
    /**
     * The setting configured by this policy, represented as a JSON string.
     */
    readonly setting: string;
    /**
     * The type of the policy.
     */
    readonly type: string;
}
/**
 * Use this data source to retrieve a Cloud Identity policy.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as gcp from "@pulumi/gcp";
 *
 * const test = gcp.cloudidentity.getPolicy({
 *     name: "policies/{policy_id}",
 * });
 * export const policyCustomer = test.then(test => test.customer);
 * export const policyQueryQuery = test.then(test => test.policyQueries?.[0]?.query);
 * export const policyQueryOrgUnit = test.then(test => test.policyQueries?.[0]?.orgUnit);
 * export const policyQueryGroup = test.then(test => test.policyQueries?.[0]?.group);
 * export const policyQuerySortOrder = test.then(test => test.policyQueries?.[0]?.sortOrder);
 * export const policySetting = test.then(test => test.setting);
 * ```
 */
export declare function getPolicyOutput(args: GetPolicyOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetPolicyResult>;
/**
 * A collection of arguments for invoking getPolicy.
 */
export interface GetPolicyOutputArgs {
    /**
     * The resource name of the policy to retrieve. Format: `policies/{policy_id}`.
     */
    name: pulumi.Input<string>;
}
//# sourceMappingURL=getPolicy.d.ts.map