import { type OutgoingHttpHeaders } from "node:http";
import { type DiagLogger } from "@opentelemetry/api";
import { type Settings } from "@solarwinds-apm/sampling";
import { type Configuration } from "../exporters/config.js";
import { Sampler } from "./sampler.js";
/** Retrieves the hostname (or User-Agent in browsers) in URL encoded format */
export declare function hostname(): Promise<string>;
/** Retrieves the HTTP getter function to use */
export declare function getter(config: Configuration, logger?: DiagLogger): Promise<((url: URL, options: {
    headers?: OutgoingHttpHeaders;
    signal?: AbortSignal;
}) => Promise<unknown>) | ((url: URL, options: {
    headers?: HeadersInit;
    signal?: AbortSignal;
}) => Promise<unknown>)>;
export declare class HttpSampler extends Sampler {
    #private;
    constructor(config: Configuration, initial?: Settings);
    toString(): string;
}
//# sourceMappingURL=http.d.ts.map