/// <reference types="node" />
import { IncomingHttpHeaders } from 'http';
import { NodeOptions } from './types.js';
import type { Attributes } from '@opentelemetry/api';
import { ResourceAttributes } from '@opentelemetry/resources';
export declare const HIGHLIGHT_REQUEST_HEADER = "x-highlight-request";
export interface HighlightInterface {
    init: (options: NodeOptions) => void;
    stop: () => Promise<void>;
    isInitialized: () => boolean;
    parseHeaders: (headers: IncomingHttpHeaders) => {
        secureSessionId: string;
        requestId: string;
    } | undefined;
    consumeError: (error: Error, secureSessionId?: string, requestId?: string, metadata?: Attributes) => void;
    recordMetric: (secureSessionId: string, name: string, value: number, requestId?: string, tags?: {
        name: string;
        value: string;
    }[]) => void;
    flush: () => Promise<void>;
    log: (message: any, level: string, secureSessionId?: string | undefined, requestId?: string | undefined, metadata?: Attributes) => void;
    consumeAndFlush: (error: Error, secureSessionId?: string, requestId?: string, metadata?: Attributes) => Promise<void>;
    setAttributes: (attributes: ResourceAttributes) => void;
    _debug: (...data: any[]) => void;
}
export declare const H: HighlightInterface;
//# sourceMappingURL=sdk.d.ts.map