import type { LogRecord, MutableLogSinkCounters } from './types.js'; export declare const MAX_ATTRIBUTES = 64; export declare const MAX_VALUE_BYTES: number; export declare const MAX_RECORD_BYTES: number; /** * At most 64 attributes. Excess keys are dropped in ascending key order — * the same deterministic rule `capTotalSize` uses below, so a reader who has * learned one learns both. */ export declare function capAttributeCount(record: LogRecord, counters: MutableLogSinkCounters): LogRecord; /** * Each string attribute value truncated at 8 KiB, tail replaced by * `…[truncated N bytes]` inside the value — self-describing, so no extra * flag field is minted for something the value already says about itself. */ export declare function truncateValues(record: LogRecord, counters: MutableLogSinkCounters): LogRecord; /** * Total serialized record ≤ 16 KiB. Per-value and per-count caps are * independently satisfiable by a record with many small attributes, so this * is the last line and measures the whole record, not one dimension of it. * Attributes are dropped in ascending key order until it fits, and * `namzu.log.truncated = true` is set on what remains — the marker a * downstream reader needs to tell "this record is smaller than what was * logged" from "this is genuinely all there was". */ export declare function capTotalSize(record: LogRecord, counters: MutableLogSinkCounters): LogRecord; //# sourceMappingURL=caps.d.ts.map