import { BreadcrumbPushData, TransportDataType, VueInstance } from '@gogocj/types'; import { Breadcrumb } from '@gogocj/core'; type CANCEL = null | undefined | boolean; type TSetRequestHeader = (key: string, value: string) => {}; export interface IBeforeAppAjaxSendConfig { setRequestHeader: TSetRequestHeader; } export type HttpMethod = 'GET' | 'POST' | 'PATCH' | 'PUT' | 'DELETE' | 'OPTIONS'; interface IRequestHeaderConfig { url: HttpMethod; method: string; } export interface BaseOptionsType extends BaseOptionsFieldsIntegrationType { bindOptions(options: O): void; } export interface BaseOptionsFieldsType { dsn?: string; disabled?: boolean; apikey?: string; debug?: boolean; enableTraceId?: boolean; maxBreadcrumbs?: number; throttleDelayTime?: number; maxDuplicateCount?: number; vue?: VueInstance; } export type BaseOptionsFieldsIntegrationType = BaseOptionsFieldsType & BaseOptionsHooksType; export interface BaseOptionsHooksType { beforeDataReport?(event: TransportDataType): Promise | TransportDataType | any | CANCEL | null; configReportUrl?(event: TransportDataType, url: string): string; beforePushBreadcrumb?(breadcrumb: Breadcrumb, hint: BreadcrumbPushData): BreadcrumbPushData | CANCEL; beforeAppAjaxSend?(config: IRequestHeaderConfig, setRequestHeader: IBeforeAppAjaxSendConfig): void; backTrackerId?(): string | number; } export {}; //# sourceMappingURL=baseOptionsType.d.ts.map