/** * This file was auto-generated by Fern from our API Definition. */ import * as environments from "../../../../environments"; import * as core from "../../../../core"; import * as Flatfile from "../../../index"; export declare namespace Users { interface Options { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; token?: core.Supplier; /** Override the X-Disable-Hooks header */ xDisableHooks?: "true"; fetcher?: core.FetchFunction; } interface RequestOptions { /** The maximum time to wait for a response in seconds. */ timeoutInSeconds?: number; /** The number of times to retry the request. Defaults to 2. */ maxRetries?: number; /** A hook to abort the request. */ abortSignal?: AbortSignal; /** Override the X-Disable-Hooks header */ xDisableHooks?: "true"; /** Additional headers to include in the request. */ headers?: Record; } } export declare class Users { protected readonly _options: Users.Options; constructor(_options?: Users.Options); /** * Gets a list of users * * @param {Flatfile.ListUsersRequest} request * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @example * await client.users.list({ * email: "john.smith@example.com" * }) */ list(request?: Flatfile.ListUsersRequest, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __list; /** * Creates and invites a new user to your account. * * @param {Flatfile.UserCreateAndInviteRequest} request * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @example * await client.users.createAndInvite({ * email: "john.smith@example.com", * name: "John Smith", * actorRoles: [{ * roleId: "us_rol_YOUR_ID", * resourceId: "us_acc_YOUR_ID" * }, { * roleId: "us_rol_YOUR_ID", * resourceId: "us_env_YOUR_ID" * }] * }) */ createAndInvite(request: Flatfile.UserCreateAndInviteRequest, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __createAndInvite; /** * Resends an invite to a user for your account. * * @param {Flatfile.UserId} userId - The user id * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @example * await client.users.resendInvite("userId") */ resendInvite(userId: Flatfile.UserId, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __resendInvite; /** * Updates a user * * @param {Flatfile.UserId} userId - The user id * @param {Flatfile.UpdateUserRequest} request * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @example * await client.users.update("userId") */ update(userId: Flatfile.UserId, request?: Flatfile.UpdateUserRequest, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __update; /** * Gets a user * * @param {Flatfile.UserId} userId - The user id * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @example * await client.users.get("us_usr_YOUR_ID") */ get(userId: Flatfile.UserId, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __get; /** * Deletes a user * * @param {Flatfile.UserId} userId - The user id * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @example * await client.users.delete("userId") */ delete(userId: Flatfile.UserId, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __delete; /** * Lists roles assigned to a user. * * @param {Flatfile.UserId} userId - The user id * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Flatfile.BadRequestError} * @throws {@link Flatfile.NotFoundError} * @throws {@link Flatfile.ForbiddenError} * * @example * await client.users.listUserRoles("userId") */ listUserRoles(userId: Flatfile.UserId, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __listUserRoles; /** * Assigns a role to a user. * * @param {Flatfile.UserId} userId - The user id * @param {Flatfile.AssignActorRoleRequest} request * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Flatfile.BadRequestError} * @throws {@link Flatfile.NotFoundError} * @throws {@link Flatfile.ForbiddenError} * * @example * await client.users.assignUserRole("userId", { * roleId: "roleId", * resourceId: "resourceId" * }) */ assignUserRole(userId: Flatfile.UserId, request: Flatfile.AssignActorRoleRequest, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __assignUserRole; /** * Removes a role from a user. * * @param {Flatfile.UserId} userId - The user id * @param {Flatfile.ActorRoleId} actorRoleId - The actor role id * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Flatfile.BadRequestError} * @throws {@link Flatfile.NotFoundError} * @throws {@link Flatfile.ForbiddenError} * * @example * await client.users.deleteUserRole("userId", "actorRoleId") */ deleteUserRole(userId: Flatfile.UserId, actorRoleId: Flatfile.ActorRoleId, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __deleteUserRole; /** * Gets all the api tokens for a user. * * @param {Flatfile.UserId} userId - The user id * @param {Flatfile.ListApiTokensRequest} request * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @example * await client.users.listApiTokens("userId", { * tenantId: "tenantId" * }) */ listApiTokens(userId: Flatfile.UserId, request: Flatfile.ListApiTokensRequest, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __listApiTokens; /** * Creates an api token for authenticating against Flatfile APIs. * * @param {Flatfile.UserId} userId - The user id * @param {Flatfile.CreateApiTokenRequest} request * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @example * await client.users.createApiToken("userId", { * tenantId: "tenantId" * }) */ createApiToken(userId: Flatfile.UserId, request: Flatfile.CreateApiTokenRequest, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __createApiToken; /** * Exchange an invitation for an access token * * @param {Flatfile.ExchangeTokenRequest} request * @param {Users.RequestOptions} requestOptions - Request-specific configuration. * * @example * await client.users.exchangeToken() */ exchangeToken(request?: Flatfile.ExchangeTokenRequest, requestOptions?: Users.RequestOptions): core.HttpResponsePromise; private __exchangeToken; protected _getAuthorizationHeader(): Promise; }