/// /// /** * Encodes staking transaction policy parameters into a TLV (Tag-Length-Value) formatted Buffer. * * @param timelockBlocks - The number of blocks for the staking timelock (uint64). * @param finalityProviders - An array of finality provider public keys (hex strings, each 32 bytes). * @param covenantThreshold - The threshold value for the covenant (quorum). * @param covenantPks - An array of covenant public keys (hex strings, each 32 bytes). * @returns The encoded TLV Buffer representing the staking transaction policy. * @throws {Error} If any public key is not 32 bytes in length. */ export declare function encodeStakingTxPolicyToTLV(bip32Path: string, timelockBlocks: number, finalityProviders: string[], covenantThreshold: number, covenantPks: string[]): Buffer; /** * Encodes slashing transaction policy parameters into a TLV (Tag-Length-Value) formatted Buffer. * * @param finalityProviders - An array of finality provider public keys (hex strings, each 32 bytes). * @param covenantThreshold - The threshold value for the covenant (quorum). * @param covenantPks - An array of covenant public keys (hex strings, each 32 bytes). * @param fee - The slashing fee limit (uint64). * @returns The encoded TLV Buffer representing the slashing transaction policy. * @throws {Error} If any public key is not 32 bytes in length. */ export declare function encodeSlashingTxPolicyToTLV(bip32Path: string, timelockBlocks: number, finalityProviders: string[], covenantThreshold: number, covenantPks: string[], slashingPkScriptHex: string, fee: number, isUnbonding?: boolean): Buffer; /** * Encodes slashing transaction policy parameters into a TLV (Tag-Length-Value) formatted Buffer. * * @param finalityProviders - An array of finality provider public keys (hex strings, each 32 bytes). * @param covenantThreshold - The threshold value for the covenant (quorum). * @param covenantPks - An array of covenant public keys (hex strings, each 32 bytes). * @param fee - The slashing fee limit (uint64). * @returns The encoded TLV Buffer representing the slashing transaction policy. * @throws {Error} If any public key is not 32 bytes in length. */ export declare function encodeUnbondPolicyToTLV(bip32Path: string, timelockBlocks: number, finalityProviders: string[], covenantThreshold: number, covenantPks: string[], fee: number): Buffer; /** * Encodes slashing transaction policy parameters into a TLV (Tag-Length-Value) formatted Buffer. * * @param finalityProviders - An array of finality provider public keys (hex strings, each 32 bytes). * @param covenantThreshold - The threshold value for the covenant (quorum). * @param covenantPks - An array of covenant public keys (hex strings, each 32 bytes). * @param fee - The slashing fee limit (uint64). * @returns The encoded TLV Buffer representing the slashing transaction policy. * @throws {Error} If any public key is not 32 bytes in length. */ export declare function encodeWithdrawPolicyToTLV(bip32Path: string, timelockBlocks: number): Buffer; export declare function encodeSignMessagePolicyToTLV(bip32Path: string, message: Buffer, pubkey: Buffer): Buffer; /** * Encodes Expansion transaction policy parameters into a TLV (Tag-Length-Value) formatted Buffer. * * @param timelockBlocks - The number of blocks for the staking timelock (uint64). * @param finalityProviders - An array of finality provider public keys (hex strings, each 32 bytes). * @param covenantThreshold - The threshold value for the covenant (quorum). * @param covenantPks - An array of covenant public keys (hex strings, each 32 bytes). * @returns The encoded TLV Buffer representing the staking transaction policy. * @throws {Error} If any public key is not 32 bytes in length. */ export declare function encodeExpansionPolicyToTLV(bip32Path: string, timelockBlocks: number, finalityProviders: string[], covenantThreshold: number, covenantPks: string[]): Buffer; /** * Encodes GetVersion transaction policy parameters into a TLV (Tag-Length-Value) formatted Buffer. */ export declare function encodeGetVersionTLV(): Buffer; /** * Encodes slashing transaction policy parameters into a TLV (Tag-Length-Value) formatted Buffer. * * @param finalityProviders - An array of finality provider public keys (hex strings, each 32 bytes). * @param covenantThreshold - The threshold value for the covenant (quorum). * @param covenantPks - An array of covenant public keys (hex strings, each 32 bytes). * @param fee - The slashing fee limit (uint64). * @returns The encoded TLV Buffer representing the slashing transaction policy. * @throws {Error} If any public key is not 32 bytes in length. */ export declare function encodeVaultPayoutPolicyToTLV(bip32Path: string, depositorPubkey: string, vaultProviderPubkey: string, vaultKeepers: string[], vaultKeepersThreshold: number, ucPks: string[], ucThreshold: number): Buffer; /** * Encodes Vault Peg-in transaction policy parameters into a TLV (Tag-Length-Value) formatted Buffer. * * @param bip32Path - The BIP32 derivation path. * @param depositorPubkey - The depositor public key (hex string, 32 bytes). * @param vaultProviderPubkey - The vault provider public key (hex string, 32 bytes). * @param vaultKeepers - An array of vault keeper public keys (hex strings, each 32 bytes). * @param vaultKeepersThreshold - The threshold value for the vault keepers (quorum). * @param ucPks - An array of UC public keys (hex strings, each 32 bytes). * @param ucThreshold - The threshold value for UC (quorum). * @returns The encoded TLV Buffer representing the vault peg-in transaction policy. * @throws {Error} If any public key is not 32 bytes in length. */ export declare function encodeVaultPeginPolicyToTLV(bip32Path: string, depositorPubkey: string, vaultProviderPubkey: string, vaultKeepers: string[], vaultKeepersThreshold: number, ucPks: string[], ucThreshold: number): Buffer;