import { BooleanType, ByteVectorType, ContainerType, ListCompositeType, UintNumberType } from '@chainsafe/ssz'; import { type Hex } from 'viem'; import type { ValidatorKey, ValidatorSet } from '../types/index.js'; export declare const SszKey: ContainerType<{ Tag: UintNumberType; PayloadHash: ByteVectorType; }>; export declare const SszVault: ContainerType<{ ChainId: UintNumberType; Vault: ByteVectorType; VotingPower: ByteVectorType; }>; export declare const SszValidator: ContainerType<{ Operator: ByteVectorType; VotingPower: ByteVectorType; IsActive: BooleanType; Keys: ListCompositeType>; Vaults: ListCompositeType>; }>; export declare const SszValidatorSet: ContainerType<{ Validators: ListCompositeType>; Vaults: ListCompositeType>; }>>; }>; export interface ISszKey { Tag: number; PayloadHash: Uint8Array; } export interface ISszVault { ChainId: number; Vault: Uint8Array; VotingPower: Uint8Array; } export interface ISszValidator { Operator: Uint8Array; VotingPower: Uint8Array; IsActive: boolean; Keys: ISszKey[]; Vaults: ISszVault[]; } export interface ISszValidatorSet { Validators: ISszValidator[]; } /** @notice SSZ serialize a validator set. */ export declare const serializeValidatorSet: (validatorSet: ISszValidatorSet) => Uint8Array; /** @notice SSZ deserialize a validator set. */ export declare const deserializeValidatorSet: (bytes: Uint8Array) => ISszValidatorSet; /** @notice Compute SSZ tree root for a validator set. */ export declare const getValidatorSetRoot: (validatorSet: ISszValidatorSet) => Uint8Array; /** @notice Placeholder: SSZ Merkle proof not implemented for current version. */ export declare const proveValidator: (_validatorSet: ISszValidatorSet, _validatorIndex: number) => Uint8Array[]; /** @notice Keccak hash of validator key payload. */ export declare const keyPayloadHash: (key: ValidatorKey) => Uint8Array; /** @notice Convert TS validator set into SSZ-friendly shape. */ export declare const validatorSetToSszValidators: (v: ValidatorSet) => ISszValidatorSet; /** @notice SSZ tree root as hex string for a validator set. */ export declare const sszTreeRoot: (v: ValidatorSet) => Hex; //# sourceMappingURL=ssz.d.ts.map