import { Client } from '../client'; import { BaseError } from '../errors/baseError'; import { UriHelper } from '../uri-helper'; import { ThBaseHandler } from '../base'; export interface IamUsersOptions { user?: string; base?: string; } export interface IamUsersResponse { data: IamUser[]; metadata: Record; next?: () => Promise; } export interface IamUsersMetaResponse { data: Record; metadata: Record; msg: string; } export interface IamUserResponse { data: IamUser; metadata: Record; msg?: string; errors?: ErrorObject[]; } export interface ErrorObject { id: string; label: string; errorDetails: Record; } export interface IamUser { id?: string; email?: string; username?: string; firstName?: string; lastName?: string; attributes?: Record; groups?: string[]; has2faConfigured?: boolean; hasBackupCodesConfigured?: boolean; hasActiveSessions?: boolean; } export interface IamUsersQueryHandler { limit?: number; uri?: string; query?: IamUsersQuery; orderFields?: string[] | string; } export interface IamUsersQuery extends IamUser { deleted?: boolean; active?: boolean; q?: string; } export declare class IamUsers extends ThBaseHandler { static baseEndpoint: string; endpoint: string; http: Client; options: IamUsersOptions; uriHelper: UriHelper; constructor(options: IamUsersOptions, http: Client); getAll(query?: IamUsersQueryHandler | undefined): Promise; meta(query?: IamUsersQueryHandler | undefined): Promise; get(iamUserId: string): Promise; profile(iamUserId: string): Promise; put(iamUserId: string, iamUser: IamUser): Promise; create(iamUser: IamUser): Promise; delete(iamUserId: string): Promise; reset2fa(iamUserId: string): Promise; sendBackupCodesRegenerationEmail(iamUserId: string): Promise; } export declare class IamUsersFetchFailed extends BaseError { message: string; name: string; constructor(message?: string, properties?: Record); } export declare class IamUsersMetaFailed extends BaseError { message: string; name: string; constructor(message?: string, properties?: Record); } export declare class IamUserFetchFailed extends BaseError { message: string; name: string; constructor(message?: string, properties?: Record); } export declare class IamUserPutFailed extends BaseError { message: string; name: string; constructor(message?: string, properties?: Record); } export declare class IamUserCreationFailed extends BaseError { message: string; name: string; constructor(message?: string, properties?: Record); } export declare class IamUserDeleteFailed extends BaseError { message: string; name: string; constructor(message?: string, properties?: Record); } export declare class IamUserReset2faFailed extends BaseError { message: string; name: string; constructor(message?: string, properties?: Record); } export declare class IamUserRegenerateBackupCodesFailed extends BaseError { message: string; name: string; constructor(message?: string, properties?: Record); } export declare class IamUserProfileFetchFailed extends BaseError { message: string; name: string; constructor(message?: string, properties?: Record); }