import { Track } from './track';
import type { ITrackConfig } from './type';
/**
 * 小程序日志上报
 *
 * @example
 *
 * ```ts
 * const track = new MiniTrack({
 *   slsOptions: {
 *     host: 'https://sls.aliyuncs.com',
 *     project: 'your-project',
 *     logstore: 'your-logstore',
 *     topic: 'your-topic',
 *     source: 'your-source',
 *     tags: {
 *       tag1: 'value1',
 *       tag2: 'value2',
 *     },
 *   },
 *   trackOptions: {
 *     maxQueueSize: 10,
 *     debounceTime: 1000,
 *     persistLogs: false,
 *     localStorageKey: 'your-local-storage-key',
 *     uploadEnabled: true,
 *   },
 *   sendPayload: (logs) => logs,
 * })
 * ```
 */
export declare class MiniTrack<ILog extends Record<string, any> = any> extends Track<ILog> {
    private _format;
    constructor(trackConfig: ITrackConfig);
    format(log: any[]): any[];
    /**
     * 小程序上报日志
     *
     * @param payload
     * @param headers
     * @returns
     */
    _upload(payload: string, headers: Record<string, string>): Promise<unknown>;
    _getStorage(key: string): any[];
    _setStorage(key: string, value: any[]): void;
}
