UNPKG

@nervosnetwork/ckb-sdk-utils

Version:

Utils module of @nervosnetwork/ckb-sdk-core

40 lines (39 loc) 1.75 kB
/// <reference types="@nervosnetwork/ckb-types" /> export declare enum AddressPrefix { Mainnet = "ckb", Testnet = "ckt" } export declare enum AddressType { FullVersion = "0x00", HashIdx = "0x01", DataCodeHash = "0x02", TypeCodeHash = "0x04" } export declare enum Bech32Type { Bech32 = "bech32", Bech32m = "bech32m" } export declare const scriptToAddress: (script: CKBComponents.Script, isMainnet?: boolean) => string; export declare type CodeHashIndex = '0x00' | '0x01' | '0x02'; export interface AddressOptions { prefix?: AddressPrefix; type?: AddressType; codeHashOrCodeHashIndex?: CodeHashIndex | CKBComponents.Hash256; } export declare const toAddressPayload: (args: string | Uint8Array, type?: AddressType, codeHashOrCodeHashIndex?: string | undefined, hashType?: CKBComponents.ScriptHashType | undefined) => Uint8Array; export declare const bech32Address: (args: Uint8Array | string, { prefix, type, codeHashOrCodeHashIndex }?: AddressOptions) => string; export declare const fullPayloadToAddress: ({ args, prefix, type, codeHash, }: { args: string; prefix?: AddressPrefix | undefined; type?: AddressType.DataCodeHash | AddressType.TypeCodeHash | undefined; codeHash: CKBComponents.Hash256; }) => string; export declare const pubkeyToAddress: (pubkey: Uint8Array | string, options?: AddressOptions) => string; export declare interface ParseAddress { (address: string): Uint8Array; (address: string, encode: 'binary'): Uint8Array; (address: string, encode: 'hex'): string; (address: string, encode: 'binary' | 'hex'): Uint8Array | string; } export declare const parseAddress: ParseAddress; export declare const addressToScript: (address: string) => CKBComponents.Script;