@fullstory/server-api-client
Version:
The official FullStory server API client SDK for NodeJS.
55 lines (54 loc) • 2.91 kB
TypeScript
import { UsersApi as FSUsersApi } from './api/index';
import { BatchUserImportRequest, BatchUserImportResponse, CreateBatchUserImportJobRequest, CreateBatchUserImportJobResponse, CreateUserResponse, FailedUserImport, GetBatchEventsImportErrorsResponse, GetBatchUserImportsResponse, GetUserResponse, JobStatusResponse, ListUsersResponse, UpdateUserResponse } from './model/index';
import { BatchJob, BatchJobOptions, BatchRequester } from './batch';
import { FSResponse, FullStoryOptions, WithOptions } from './http';
/**
* @interface UsersApi - single CRUD operations for a user.
*/
interface UsersApi {
get(...req: Parameters<typeof FSUsersApi.prototype.getUser>): Promise<FSResponse<GetUserResponse>>;
create(...req: Parameters<typeof FSUsersApi.prototype.createUser>): Promise<FSResponse<CreateUserResponse>>;
list(...req: Parameters<typeof FSUsersApi.prototype.listUsers>): Promise<FSResponse<ListUsersResponse>>;
delete(request: {
id?: string;
uid?: string;
}): Promise<FSResponse<void>>;
update(...req: Parameters<typeof FSUsersApi.prototype.updateUser>): Promise<FSResponse<UpdateUserResponse>>;
}
/**
* @interface BatchUsersApi - batch import users.
*/
interface BatchUsersApi {
batchCreate(request?: {
body: CreateBatchUserImportJobRequest;
includeSchema?: boolean;
}, jobOptions?: BatchJobOptions): BatchUsersJob;
}
/**
* @interface BatchUsersJob - a job for batch import users, providing job management and callbacks.
*/
export type BatchUsersJob = BatchJob<CreateBatchUserImportJobRequest, BatchUserImportRequest, BatchUserImportResponse, FailedUserImport>;
/**
* @interface Users - CRUD operations or batch import users.
*/
export type Users = BatchUsersApi & UsersApi;
export type BatchUsersRequester = BatchRequester<CreateBatchUserImportJobRequest, CreateBatchUserImportJobResponse, JobStatusResponse, GetBatchUserImportsResponse, GetBatchEventsImportErrorsResponse>;
export declare class UsersImpl implements Users, WithOptions<Users> {
private opts;
protected readonly usersImpl: FSUsersApi;
constructor(opts: FullStoryOptions);
withOptions(opts: Partial<FullStoryOptions>): Users;
get(...request: Parameters<typeof FSUsersApi.prototype.getUser>): Promise<FSResponse<GetUserResponse>>;
create(...request: Parameters<typeof FSUsersApi.prototype.createUser>): Promise<FSResponse<CreateUserResponse>>;
list(...request: Parameters<typeof FSUsersApi.prototype.listUsers>): Promise<FSResponse<ListUsersResponse>>;
delete(request: {
id?: string;
uid?: string;
}): Promise<FSResponse<void>>;
update(...request: Parameters<typeof FSUsersApi.prototype.updateUser>): Promise<FSResponse<UpdateUserResponse>>;
batchCreate(request?: {
body: CreateBatchUserImportJobRequest;
includeSchema?: boolean;
}, jobOptions?: BatchJobOptions): BatchUsersJob;
}
export {};