import * as pulumi from "@pulumi/pulumi"; /** * Use this data source to retrieve the list of Datadog permissions by name and their corresponding ID, for use in the role resource. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as datadog from "@pulumi/datadog"; * * const ddPerms = datadog.getPermissions({}); * // Example of using specific permissions to create an API Key Manager role * const apiKeyManager = new datadog.Role("api_key_manager", { * name: "API Key Manager", * permissions: [ * { * id: ddPerms.then(ddPerms => ddPerms.permissions?.apiKeysRead), * }, * { * id: ddPerms.then(ddPerms => ddPerms.permissions?.apiKeysWrite), * }, * ], * }); * ``` */ export declare function getPermissions(args?: GetPermissionsArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getPermissions. */ export interface GetPermissionsArgs { /** * Whether to include restricted permissions. Restricted permissions are granted by default to all users of a Datadog org, and cannot be manually granted or revoked. Defaults to `false`. */ includeRestricted?: boolean; } /** * A collection of values returned by getPermissions. */ export interface GetPermissionsResult { /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * Whether to include restricted permissions. Restricted permissions are granted by default to all users of a Datadog org, and cannot be manually granted or revoked. Defaults to `false`. */ readonly includeRestricted?: boolean; /** * Map of permissions names to their corresponding ID. */ readonly permissions: { [key: string]: string; }; } /** * Use this data source to retrieve the list of Datadog permissions by name and their corresponding ID, for use in the role resource. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as datadog from "@pulumi/datadog"; * * const ddPerms = datadog.getPermissions({}); * // Example of using specific permissions to create an API Key Manager role * const apiKeyManager = new datadog.Role("api_key_manager", { * name: "API Key Manager", * permissions: [ * { * id: ddPerms.then(ddPerms => ddPerms.permissions?.apiKeysRead), * }, * { * id: ddPerms.then(ddPerms => ddPerms.permissions?.apiKeysWrite), * }, * ], * }); * ``` */ export declare function getPermissionsOutput(args?: GetPermissionsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getPermissions. */ export interface GetPermissionsOutputArgs { /** * Whether to include restricted permissions. Restricted permissions are granted by default to all users of a Datadog org, and cannot be manually granted or revoked. Defaults to `false`. */ includeRestricted?: pulumi.Input; }