/** * Public configuration and measurement vocabulary for replay token metering. * * @module @deepseek-ai/dsh-token-meter/types */ import type { TokenUsage } from '@deepseek-ai/dsh-llm'; export type { ContextBreakdownProjection, ContextPressureProjection, TokenUsageProjection } from './projection.ts'; /** Token-meter plugin configuration; the fixed estimator has no settings. */ export type TokenMeterConfig = Record; /** The baseline from which a signed surface delta produces current pressure. */ export type TokenMeasurementBaseline = { readonly kind: 'none'; readonly tokens: 0; } | { readonly kind: 'estimated'; readonly tokens: number; } | { readonly kind: 'usage'; readonly tokens: number; readonly usage: Readonly; }; /** Detached immutable request-pressure and surface snapshot at one consumed log revision. */ export interface TokenMeasurement { /** Number of durable events consumed; equal to the next unread event seq. */ readonly logRevision: number; /** Provider or heuristic anchor used for this measurement. */ readonly baseline: TokenMeasurementBaseline; /** Signed repricing of current surface content relative to the baseline anchor. */ readonly surfaceDeltaTokens: number; /** Non-negative current request-and-response pressure. */ readonly totalTokens: number; /** Total heuristic tokens across the current surface. */ readonly surfaceTokens: number; /** Current surface nodes in positional head-to-tail order. */ readonly nodes: readonly TokenSurfaceNode[]; } /** One token-priced node in the current ordered session surface. */ export interface TokenSurfaceNode { /** Durable sequence number of the surface event. */ readonly seq: number; /** Heuristic tokens for the exact message projected by this node. */ readonly tokens: number; } //# sourceMappingURL=types.d.ts.map