import * as pulumi from "@pulumi/pulumi";
/**
 * Retrieves the current IAM policy data for a project.
 *
 * ## example
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as gcp from "@pulumi/gcp";
 *
 * const policy = gcp.projects.getIamPolicy({
 *     project: "myproject",
 * });
 * ```
 */
export declare function getIamPolicy(args: GetIamPolicyArgs, opts?: pulumi.InvokeOptions): Promise<GetIamPolicyResult>;
/**
 * A collection of arguments for invoking getIamPolicy.
 */
export interface GetIamPolicyArgs {
    /**
     * The project id of the target project. This is not
     * inferred from the provider.
     */
    project: string;
}
/**
 * A collection of values returned by getIamPolicy.
 */
export interface GetIamPolicyResult {
    /**
     * (Computed) The etag of the IAM policy.
     */
    readonly etag: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * (Computed) The policy data
     */
    readonly policyData: string;
    readonly project: string;
}
/**
 * Retrieves the current IAM policy data for a project.
 *
 * ## example
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as gcp from "@pulumi/gcp";
 *
 * const policy = gcp.projects.getIamPolicy({
 *     project: "myproject",
 * });
 * ```
 */
export declare function getIamPolicyOutput(args: GetIamPolicyOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetIamPolicyResult>;
/**
 * A collection of arguments for invoking getIamPolicy.
 */
export interface GetIamPolicyOutputArgs {
    /**
     * The project id of the target project. This is not
     * inferred from the provider.
     */
    project: pulumi.Input<string>;
}
