import * as pulumi from "@pulumi/pulumi";
import * as outputs from "./types/output";
/**
* Provides a datasource to list IAM Entities. Entities are used in authorization policies (e.g. user, role, cluster). Supports pagination and OData `filter`, `orderBy`, and `select`.
*
* ## Example Usage
*
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as nutanix from "@pierskarsenbarg/nutanix";
*
* // List all entities (default page/limit)
* const all = nutanix.getIamEntitiesV2({});
* // List entities with filter and pagination
* const filtered = nutanix.getIamEntitiesV2({
* filter: "name eq 'user'",
* limit: 20,
* page: 0,
* });
* // List with order_by
* const ordered = nutanix.getIamEntitiesV2({
* orderBy: "name asc",
* limit: 50,
* });
* // List with select to specify returned fields
* const selected = nutanix.getIamEntitiesV2({
* select: "name,displayName,extId",
* limit: 10,
* });
* ```
*
*/
export declare function getIamEntitiesV2(args?: GetIamEntitiesV2Args, opts?: pulumi.InvokeOptions): Promise;
/**
* A collection of arguments for invoking getIamEntitiesV2.
*/
export interface GetIamEntitiesV2Args {
/**
* OData filter expression. The filter can be applied to the following fields:
* * `createdBy` - Filter by creator (user or service ext_id).
* * `createdTime` - Filter by creation time (ISO 8601 format).
* * `displayName` - Filter by display name.
* * `extId` - Filter by entity external identifier.
* * `lastUpdatedTime` - Filter by last updated time (ISO 8601 format).
*/
filter?: string;
/**
* Number of records to return. Must be between 1 and 100. Default is 50.
*/
limit?: number;
/**
* OData orderby expression. The orderby can be applied to the following fields:
*
* * `createdTime` - Sort by creation time (ISO 8601 format).
* * `displayName` - Sort by display name.
* * `extId` - Sort by entity external identifier.
* * `lastUpdatedTime` - Sort by last updated time (ISO 8601 format).
*/
orderBy?: string;
/**
* Page number of the result set (0-based). Must be between 0 and the maximum number of pages.
*/
page?: number;
/**
* OData select expression. The select can be applied to the following fields:
* * `clientName` - Select by client name.
* * `createdBy` - Select by creator (user or service ext_id).
* * `createdTime` - Select by creation time (ISO 8601 format).
*/
select?: string;
}
/**
* A collection of values returned by getIamEntitiesV2.
*/
export interface GetIamEntitiesV2Result {
/**
* List of IAM entities.
*/
readonly entities: outputs.GetIamEntitiesV2Entity[];
readonly filter?: string;
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
readonly limit?: number;
readonly orderBy?: string;
readonly page?: number;
readonly select?: string;
}
/**
* Provides a datasource to list IAM Entities. Entities are used in authorization policies (e.g. user, role, cluster). Supports pagination and OData `filter`, `orderBy`, and `select`.
*
* ## Example Usage
*
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as nutanix from "@pierskarsenbarg/nutanix";
*
* // List all entities (default page/limit)
* const all = nutanix.getIamEntitiesV2({});
* // List entities with filter and pagination
* const filtered = nutanix.getIamEntitiesV2({
* filter: "name eq 'user'",
* limit: 20,
* page: 0,
* });
* // List with order_by
* const ordered = nutanix.getIamEntitiesV2({
* orderBy: "name asc",
* limit: 50,
* });
* // List with select to specify returned fields
* const selected = nutanix.getIamEntitiesV2({
* select: "name,displayName,extId",
* limit: 10,
* });
* ```
*
*/
export declare function getIamEntitiesV2Output(args?: GetIamEntitiesV2OutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output;
/**
* A collection of arguments for invoking getIamEntitiesV2.
*/
export interface GetIamEntitiesV2OutputArgs {
/**
* OData filter expression. The filter can be applied to the following fields:
* * `createdBy` - Filter by creator (user or service ext_id).
* * `createdTime` - Filter by creation time (ISO 8601 format).
* * `displayName` - Filter by display name.
* * `extId` - Filter by entity external identifier.
* * `lastUpdatedTime` - Filter by last updated time (ISO 8601 format).
*/
filter?: pulumi.Input;
/**
* Number of records to return. Must be between 1 and 100. Default is 50.
*/
limit?: pulumi.Input;
/**
* OData orderby expression. The orderby can be applied to the following fields:
*
* * `createdTime` - Sort by creation time (ISO 8601 format).
* * `displayName` - Sort by display name.
* * `extId` - Sort by entity external identifier.
* * `lastUpdatedTime` - Sort by last updated time (ISO 8601 format).
*/
orderBy?: pulumi.Input;
/**
* Page number of the result set (0-based). Must be between 0 and the maximum number of pages.
*/
page?: pulumi.Input;
/**
* OData select expression. The select can be applied to the following fields:
* * `clientName` - Select by client name.
* * `createdBy` - Select by creator (user or service ext_id).
* * `createdTime` - Select by creation time (ISO 8601 format).
*/
select?: pulumi.Input;
}
//# sourceMappingURL=getIamEntitiesV2.d.ts.map