import * as pulumi from "@pulumi/pulumi"; /** * Retrieves the current IAM policy data for api * > **Warning:** This datasource is in beta, and should be used with the terraform-provider-google-beta provider. * See Provider Versions for more details on beta resources. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const policy = gcp.apigateway.getApiIamPolicy({ * project: api.project, * api: api.apiId, * }); * ``` */ export declare function getApiIamPolicy(args: GetApiIamPolicyArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getApiIamPolicy. */ export interface GetApiIamPolicyArgs { /** * Used to find the parent resource to bind the IAM policy to */ api: string; /** * The ID of the project in which the resource belongs. * If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used. */ project?: string; } /** * A collection of values returned by getApiIamPolicy. */ export interface GetApiIamPolicyResult { readonly api: string; /** * (Computed) The etag of the IAM policy. */ readonly etag: string; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * (Required only by `gcp.apigateway.ApiIamPolicy`) The policy data generated by * a `gcp.organizations.getIAMPolicy` data source. */ readonly policyData: string; readonly project: string; } /** * Retrieves the current IAM policy data for api * > **Warning:** This datasource is in beta, and should be used with the terraform-provider-google-beta provider. * See Provider Versions for more details on beta resources. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const policy = gcp.apigateway.getApiIamPolicy({ * project: api.project, * api: api.apiId, * }); * ``` */ export declare function getApiIamPolicyOutput(args: GetApiIamPolicyOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getApiIamPolicy. */ export interface GetApiIamPolicyOutputArgs { /** * Used to find the parent resource to bind the IAM policy to */ api: pulumi.Input; /** * The ID of the project in which the resource belongs. * If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used. */ project?: pulumi.Input; }