/** * Client information for detailed telemetry */ export interface ClientInfo { /** SDK name */ sdk: string; /** SDK version */ version: string; /** Runtime (e.g., 'node') */ runtime: string; /** Runtime version (e.g., '18.0.0') */ runtimeVersion: string; /** Operating system platform */ platform: string; /** Optional custom application identifier (e.g., 'MyApp/1.0.0') */ application?: string; } /** * Build standard User-Agent header value * Format: envoy-integrations-sdk/2.4.4 node/18.0.0 * With custom app: envoy-integrations-sdk/2.4.4 node/18.0.0 MyApp/1.0.0 * * This function is designed to never throw exceptions. If any error occurs, * it returns a safe fallback value to ensure SDK initialization succeeds. * * @param customUserAgent Optional custom application identifier * @returns User-Agent header value (never throws) */ export declare function buildUserAgent(customUserAgent?: string): string; /** * Build detailed client info for X-Envoy-Client-Info header * * This function is designed to never throw exceptions. If any error occurs * during info collection, it uses safe fallback values. * * @param customUserAgent Optional custom application identifier * @returns ClientInfo object (never throws) */ export declare function buildClientInfo(customUserAgent?: string): ClientInfo; /** * Build X-Envoy-Client-Info header value (JSON string) * * This function is designed to never throw exceptions. If JSON serialization * fails, it returns a minimal safe JSON string. * * @param customUserAgent Optional custom application identifier * @returns JSON string for X-Envoy-Client-Info header (never throws) */ export declare function buildClientInfoHeader(customUserAgent?: string): string; //# sourceMappingURL=userAgent.d.ts.map