import { ApitallyConsumer, ApitallyConfig } from '../common/types.js';
import { Request, Express, Router } from 'express';
import '../common/logging.js';
import 'winston';
import '../common/requestLogger.js';
import 'node:buffer';
import 'node:http';
import '../common/spanCollector.js';
import '@opentelemetry/sdk-trace-base';
import '../common/tempGzipFile.js';

declare module "express" {
    interface Request {
        apitallyConsumer?: ApitallyConsumer | string | null;
        consumerIdentifier?: ApitallyConsumer | string | null;
    }
}
declare function useApitally(app: Express | Router, config: ApitallyConfig & {
    basePath?: string;
}): void;
declare function setConsumer(req: Request, consumer: ApitallyConsumer | string | null | undefined): void;

export { setConsumer, useApitally };
