import type CodecPort from '../../../ports/CodecPort.ts';
import type CryptoPort from '../../../ports/CryptoPort.ts';
import type { WarpState } from '../JoinReducer.ts';
/**
 * Computes canonical state hashes for verification, comparison,
 * and checkpoint creation.
 *
 * The hash is SHA-256 of the CBOR-encoded visible state projection.
 * This service owns the hash computation — it is NOT buried inside
 * any single adapter or write path.
 *
 * Consumers: checkpoint creation, comparison, detached integrity
 * checks, materialization verification.
 */
export default class StateHashService {
    private readonly _codec;
    private readonly _crypto;
    /**
     * Creates a StateHashService.
     */
    constructor({ codec, crypto }: {
        codec: CodecPort;
        crypto: CryptoPort;
    });
    /**
     * Computes the SHA-256 hash of the canonical visible state projection.
     */
    compute(state: WarpState): Promise<string>;
}
