import type { AttributionPrimitive } from '../attribution-primitive/types.js'; import type { SettlementContributor, SettlementPeriod, SettlementRecord, SettlementResidualBucket } from './types.js'; /** Canonical per-contributor leaf hash — hex sha256 of the canonical * body (contributor_did, total_weight, contribution_count). Exposed so * contributor-query verifiers recompute the same bytes. */ export declare function contributorLeafHashHex(c: SettlementContributor): string; /** Residual-bucket leaf hash for the per-axis tree. Canonicalizes the * full bucket object. */ export declare function residualLeafHashHex(r: SettlementResidualBucket): string; /** 6-digit decimal form for settlement weights. Unlike Build A's * `toWeightString`, settlement weights can exceed 1.0 (they accumulate * over many actions); the 6-digit precision is preserved. Rejects * non-finite or negative values. */ export declare function formatSettlementWeight(v: number): string; export interface AggregateOptions { /** Gateway DID that will sign the settlement record. */ gateway_did: string; /** Override issued_at (tests, replayed audits). Must be canonical. */ issued_at?: string; /** When false, throws on any receipt whose timestamp is outside * [t0, t1). Default is true — out-of-period receipts are silently * dropped so a caller can hand us an uncurated batch. */ skipOutOfPeriod?: boolean; } /** Compute the unsigned settlement record for `receipts` over `period`. * Half-open interval [t0, t1) — receipts at exactly t1 are excluded. * Returns the record minus its `signature` field; callers pass the * result to `signSettlementRecord` to produce the signed record. */ export declare function aggregateAttributionPrimitives(receipts: AttributionPrimitive[], period: SettlementPeriod, options: AggregateOptions): Omit; //# sourceMappingURL=aggregate.d.ts.map