import { BaseEvent, BaseTrack } from "apaas-track/core/index"; import { NetworkRequestItem } from "../network/requestItem"; export interface ITrackHttpProperty { url: string; method: string; startTime: number; endTime: number; requestContentLength: number; responseContentLength: number; responseContent?: any; requestContent?: any; statusCode: number; headers: Record; } export interface ITrackHttpOptions { trackHeaders?: boolean; trackRequesetData?: boolean; trackResponseData?: boolean; trackFilter?: (property: ITrackHttpProperty, item: NetworkRequestItem) => boolean | ITrackHttpProperty; } export declare class HttpEvent extends BaseEvent { url: string; method: string; startTime: number; endTime: number; requestContentLength: number; responseContentLength: number; responseContent: any; requestContent: any; statusCode: number; headers: Record; trackOptions: ITrackHttpOptions; constructor(apaasTrack: BaseTrack); setTrackOptions(trackOptions: ITrackHttpOptions): void; getProperties(): { url: string; method: string; header: Record | undefined; code: number; duration: number; reqcontentlength: number; respcontentlength: number; requestContent: any; responseContent: any; start: number; end: number; }; start(url: string, method: string, requestContentLength: number, headers: Record): void; end(responseContentLength: number, statusCode: number): void; setProperties(property: { url: string; method: string; startTime: number; endTime: number; requestContentLength: number; responseContentLength: number; responseContent?: any; requestContent?: any; statusCode: number; headers: Record; }): void; } export declare const trackHttpEvent: (apaasTrack: BaseTrack, options: ITrackHttpOptions) => void; export declare const registerHttpEvent: (options?: ITrackHttpOptions) => void;