import * as pulumi from "@pulumi/pulumi"; /** * Use this data source to get information about a Google IAM Role. * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const roleinfo = gcp.iam.getRule({ * name: "roles/compute.viewer", * }); * export const theRolePermissions = roleinfo.then(roleinfo => roleinfo.includedPermissions); * ``` */ export declare function getRule(args: GetRuleArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getRule. */ export interface GetRuleArgs { /** * The name of the Role to lookup in the form `roles/{ROLE_NAME}`, `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` or `projects/{PROJECT_ID}/roles/{ROLE_NAME}` */ name: string; } /** * A collection of values returned by getRule. */ export interface GetRuleResult { /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * specifies the list of one or more permissions to include in the custom role, such as - `iam.roles.get` */ readonly includedPermissions: string[]; readonly name: string; /** * indicates the stage of a role in the launch lifecycle, such as `GA`, `BETA` or `ALPHA`. */ readonly stage: string; /** * is a friendly title for the role, such as "Role Viewer" */ readonly title: string; } /** * Use this data source to get information about a Google IAM Role. * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const roleinfo = gcp.iam.getRule({ * name: "roles/compute.viewer", * }); * export const theRolePermissions = roleinfo.then(roleinfo => roleinfo.includedPermissions); * ``` */ export declare function getRuleOutput(args: GetRuleOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getRule. */ export interface GetRuleOutputArgs { /** * The name of the Role to lookup in the form `roles/{ROLE_NAME}`, `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` or `projects/{PROJECT_ID}/roles/{ROLE_NAME}` */ name: pulumi.Input; }