import { IInjectTransport, ISerializedRequest, ISerializedError, ISerializedResponse, RequestIdentifier, IRequestMetadata, RequestUpdatedEventName } from '@staffbar/types'; import { IEnhancementRecord } from '@staffbar/types'; export declare const serializeHeaders: (headers: Headers) => { [key: string]: string; }; export declare const serializeRequest: ({ request, requestBody, enhancement, initiatedTimestamp, }: { request: Request; requestBody?: string | undefined; initiatedTimestamp: number; enhancement?: IEnhancementRecord | undefined; }) => ISerializedRequest; export declare const deserializeRequest: (requestObject: ISerializedRequest) => Request; export declare const serializeResponse: (response: Response, responseText?: string | undefined, completedTimestamp?: number | undefined) => ISerializedResponse; export declare const deserializeResponse: (responseObject: { [key: string]: any; }) => Response; export declare const serializeError: (error: Error) => ISerializedError; export interface ISimpleFetchPublisher { onRequestStarted({ id, request, initiatedTimestamp, enhancement }: { id: RequestIdentifier; request: Request; requestBody?: string; initiatedTimestamp: number; enhancement?: IEnhancementRecord; }): void; onRequestUpdated(parameters: { [key: string]: any; }, eventName: RequestUpdatedEventName): void; } export declare const serializeNativeRequest: (parameters: { [key: string]: any; }) => IRequestMetadata; export declare class SimpleFetchPublisher implements ISimpleFetchPublisher { constructor({ injectTransport }: { injectTransport: IInjectTransport; }); private _injectTransport; onRequestStarted({ id, request, requestBody, initiatedTimestamp, enhancement }: { id: RequestIdentifier; request: Request; requestBody?: string; initiatedTimestamp: number; enhancement?: IEnhancementRecord; }): void; onRequestUpdated(parameters: { [key: string]: any; }, eventName: RequestUpdatedEventName): void; } //# sourceMappingURL=request.d.ts.map