import * as pulumi from "@pulumi/pulumi"; /** * Retrieves the current IAM policy data for topic * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const policy = gcp.pubsub.getTopicIamPolicy({ * project: example.project, * topic: example.name, * }); * ``` */ export declare function getTopicIamPolicy(args: GetTopicIamPolicyArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getTopicIamPolicy. */ export interface GetTopicIamPolicyArgs { /** * 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; /** * Used to find the parent resource to bind the IAM policy to */ topic: string; } /** * A collection of values returned by getTopicIamPolicy. */ export interface GetTopicIamPolicyResult { /** * (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.pubsub.TopicIAMPolicy`) The policy data generated by * a `gcp.organizations.getIAMPolicy` data source. */ readonly policyData: string; readonly project: string; readonly topic: string; } /** * Retrieves the current IAM policy data for topic * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const policy = gcp.pubsub.getTopicIamPolicy({ * project: example.project, * topic: example.name, * }); * ``` */ export declare function getTopicIamPolicyOutput(args: GetTopicIamPolicyOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getTopicIamPolicy. */ export interface GetTopicIamPolicyOutputArgs { /** * 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; /** * Used to find the parent resource to bind the IAM policy to */ topic: pulumi.Input; }