import { type AvoInspectorEnvValueType } from "../AvoInspectorEnv";
import { AvoBatcher } from "./AvoBatcherLite";
import { type EventProperty } from "./AvoNetworkCallsHandlerLite";
import { AvoStorage } from "../AvoStorage";
export declare class AvoInspectorLite {
    environment: AvoInspectorEnvValueType;
    avoBatcher: AvoBatcher;
    apiKey: string;
    version: string;
    private avoNetworkCallsHandler;
    static avoStorage: AvoStorage;
    private static _batchSize;
    static get batchSize(): number;
    static set batchSize(newSize: number);
    private static _batchFlushSeconds;
    static get batchFlushSeconds(): number;
    private static _shouldLog;
    static get shouldLog(): boolean;
    static set shouldLog(enable: boolean);
    private static _networkTimeout;
    static get networkTimeout(): number;
    static set networkTimeout(timeout: number);
    constructor(options: {
        apiKey: string;
        env: AvoInspectorEnvValueType;
        version: string;
        appName?: string;
        suffix?: string;
    });
    trackSchemaFromEvent(eventName: string, eventProperties: Record<string, any>): Promise<EventProperty[]>;
    private _avoFunctionTrackSchemaFromEvent;
    trackSchema(eventName: string, eventSchema: Array<{
        propertyName: string;
        propertyType: string;
        encryptedPropertyValue?: string;
        children?: any;
    }>): Promise<void>;
    private trackSchemaInternal;
    enableLogging(enable: boolean): void;
    extractSchema(eventProperties: Record<string, any>, shouldLogIfEnabled?: boolean): Promise<Array<{
        propertyName: string;
        propertyType: string;
        encryptedPropertyValue?: string;
        children?: any;
    }>>;
    setBatchSize(newBatchSize: number): void;
    setBatchFlushSeconds(newBatchFlushSeconds: number): void;
}
export { AvoInspectorLite as AvoInspector };
