@fullstory/server-api-client
Version:
The official FullStory server API client SDK for NodeJS.
41 lines (40 loc) • 2.01 kB
TypeScript
import { EventsApi as FSEventsApi } from './api/index';
import { BatchCreateEventsResponse, CreateBatchEventsImportJobRequest, CreateBatchEventsImportJobResponse, CreateEventRequest, FailedEventsImport, GetBatchEventsImportErrorsResponse, GetBatchEventsImportsResponse, JobStatusResponse } from './model/index';
import { BatchJob, BatchJobOptions, BatchRequester } from './batch';
import { FSResponse, FullStoryOptions, WithOptions } from './http';
/**
* @interface EventsApi - create events within a single context.
*/
interface EventsApi {
create(...req: Parameters<typeof FSEventsApi.prototype.createEvent>): Promise<FSResponse<void>>;
}
/**
* @interface BatchEventsApi - batch import events across multiple context.
*/
interface BatchEventsApi {
batchCreate(request?: {
body: CreateBatchEventsImportJobRequest;
includeSchema?: boolean;
}, jobOptions?: BatchJobOptions): BatchEventsJob;
}
/**
* @interface BatchEventsJob - a job for batch import events, providing job management and callbacks.
*/
export type BatchEventsJob = BatchJob<CreateBatchEventsImportJobRequest, CreateEventRequest, BatchCreateEventsResponse, FailedEventsImport>;
/**
* @interface Events - create or batch import events.
*/
export type Events = BatchEventsApi & EventsApi;
export type BatchEventRequester = BatchRequester<CreateBatchEventsImportJobRequest, CreateBatchEventsImportJobResponse, JobStatusResponse, GetBatchEventsImportsResponse, GetBatchEventsImportErrorsResponse>;
export declare class EventsImpl implements Events, WithOptions<Events> {
private opts;
protected readonly eventsImpl: FSEventsApi;
constructor(opts: FullStoryOptions);
withOptions(opts: Partial<FullStoryOptions>): Events;
create(...request: Parameters<typeof FSEventsApi.prototype.createEvent>): Promise<FSResponse<void>>;
batchCreate(request?: {
body: CreateBatchEventsImportJobRequest;
includeSchema?: boolean;
}, jobOptions?: BatchJobOptions): BatchEventsJob;
}
export {};