import type { WeakAccountAddr, WeakValidatorAddr } from './cosmos.js'; import type { ES_TYPE, NaiveBase64, NaiveHexLower, NaiveHexUpper, TYPE_ID } from '@blake.regalia/belt'; export declare const RUST_TYPE: '__RUST_TYPE'; export type RustImport = { crate: string; symbol: string; }; /** * Defines the source of the rust crate */ export type FromCosmWasm = { crate: 'cosmwasm_std'; symbol: s_symbol; }; /** * Creates a strong subtype for data that is bound for or returned from a smart contract. */ export type CosmWasmDatatype = string extends s_clarifier ? { [ES_TYPE]: w_es_type; [RUST_TYPE]: s_rust; } & w_es_type : { [TYPE_ID]: s_clarifier; [ES_TYPE]: w_es_type; [RUST_TYPE]: s_rust; } & w_es_type; /** * 8-bit signed integer */ export type CwInt8 = CosmWasmDatatype; /** * 16-bit signed integer */ export type CwInt16 = CosmWasmDatatype; /** * 32-bit signed integer */ export type CwInt32 = CosmWasmDatatype; /** * 64-bit signed integer as a string or bigint */ export type CwInt64 = CosmWasmDatatype>; /** * 128-bit signed integer as a string or bigint */ export type CwInt128 = CosmWasmDatatype>; /** * 8-bit unsigned integer */ export type CwUint8 = CosmWasmDatatype; /** * 16-bit unsigned integer */ export type CwUint16 = CosmWasmDatatype; /** * 32-bit usigned integer */ export type CwUint32 = CosmWasmDatatype; /** * 64-bit unsigned integer in Rust, but a 53-bit number in ES */ export type CwUint53 = CosmWasmDatatype; /** * 64-bit unsigned integer as a string or bigint */ export type CwUint64 = CosmWasmDatatype>; /** * 128-bit unsigned integer as a string or bigint */ export type CwUint128 = CosmWasmDatatype>; /** * Base64-encoded bytes */ export type CwBase64 = CosmWasmDatatype, NaiveBase64[typeof TYPE_ID]>; type HexLowerChar = `${'0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | 'a' | 'b' | 'c' | 'd' | 'e' | 'f'}`; type HexUpperChar = `${'0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | 'A' | 'B' | 'C' | 'D' | 'E' | 'F'}`; interface HexMethods { toLowerCase(): CwHexLower; toUpperCase(): CwHexUpper; } interface HexLowerMethods extends HexMethods { concat(...a_lowers: CwHexLower[]): CwHexLower; concat(...a_uppers: (CwHexUpper | CwHexMixed)[]): CwHexMixed; charAt(i_pos: number): '' | HexLowerChar; } interface HexUpperMethods extends HexMethods { concat(...a_uppers: CwHexUpper[]): CwHexUpper; concat(...a_lowers: (CwHexLower | CwHexMixed)[]): CwHexMixed; charAt(i_pos: number): '' | HexUpperChar; } /** * Hexadecimal-encoded bytes in lowercase */ export type CwHexLower = CosmWasmDatatype, NaiveHexLower[typeof TYPE_ID]>; /** * Hexadecimal-encoded bytes in uppercase */ export type CwHexUpper = CosmWasmDatatype, NaiveHexUpper[typeof TYPE_ID]>; /** * Hexadecimal-encoded bytes in mixed case */ export type CwHexMixed = CosmWasmDatatype, NaiveHexLower[typeof TYPE_ID] | NaiveHexUpper[typeof TYPE_ID]>; /** * A unix timestamp value intended exchanged with a smart contract */ export type CwTimestamp = CosmWasmDatatype>; /** * JSON serialization of a `cosmos.base.v1beta1.Coin` value exchanged with a smart contract */ export type CwCoin = CosmWasmDatatype<{ readonly denom: s_denom; readonly amount: CwUint128; }, FromCosmWasm<'Coin'>>; /** * Base64-encoded CBOR exchanged with a smart contract */ export type CwCborBase64 = CosmWasmDatatype; /** * Strongly-typed bech32 account address for use with CosmWasm contract */ export type CwAccountAddr = CosmWasmDatatype>; /** * Strongly-typed bech32 validator address for use with CosmWasm contract */ export type CwValidatorAddr = CosmWasmDatatype>; export {}; //# sourceMappingURL=cosmwasm.d.ts.map