interface EntParamsStateTrees0 {
    accounts: Record<
        `ak_${string}`,
        (
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    never,
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value: 1) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                            serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                flags: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gaAuthFun: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gaContract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            gaContract: {
                                deserialize: (value: Buffer) => (...) | (...);
                                serialize: (value: (...) | (...)) => Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: (...)[]) => (...)[];
                            serialize: (pointers: (...)[]) => (...)[];
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                clientTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                nameTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                pointers: <AllowRaw extends boolean>(
                                    allowRaw: AllowRaw,
                                ) => { deserialize: ...; serialize: ... };
                                status: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: Name;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => {
                                deserialize: (pointers: ...) => ...;
                                serialize: (pointers: ...) => ...;
                            };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Name;
                                serialize: (value: Name) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                            serialize: (
                                value: readonly `ak_${(...)}`[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                active: {
                                    deserialize(buffer: Buffer): boolean;
                                    serialize(value: boolean): Buffer;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                log: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                referers: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: Contract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "deposit"
                    | "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            referers: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Contract;
                                serialize: (value: Contract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: Buffer[], params: unknown) => Buffer[];
                            serialize: (
                                value: readonly Uint8Array[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callerId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callerNonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                contractId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gasUsed: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                height: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                log: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                returnType: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                returnValue: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ContractCall;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            returnType: {
                                deserialize: (value: Buffer) => CallReturnType;
                                serialize: (value: CallReturnType) => Buffer;
                            };
                            returnValue: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractCall;
                                serialize: (value: ContractCall) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                oracleTtlValue: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                queryFee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                queryFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                responseFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                tag: {
                                    constValue: Oracle;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "queryFee"
                    | "abiVersion"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Oracle;
                                serialize: (value: Oracle) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${string}`;
                            serialize: (value: `st_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: 3) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                channelAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                channelReserve: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiator: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiatorAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                lockedUntil: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                lockPeriod: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responder: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responderAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                round: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                soloRound: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                stateHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: Channel;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 3;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            responderDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: Buffer) => `st_${(...)}`;
                                serialize: (value: `st_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Channel;
                                serialize: (value: Channel) => Buffer;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 3;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateTransfer;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                to: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                                serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                            };
                            to: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateDeposit;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                                serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateWithdraw;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                                serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCreateContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                                serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            > & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: number;
                                    buildTx: (params: TxParams) => `tx_${(...)}`;
                                    rebuildTx: (params: any) => any;
                                    tag: Tag;
                                    unpackTx: <TxType extends Tag>(
                                        encodedTx: (...) | (...) | (...) | (...),
                                        txType?: (...) | (...),
                                    ) => TxUnpacked & { tag: TxType; };
                                },
                                __namedParameters: { gasMax?: number },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                caller: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callStack: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                contract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasLimit: {
                                    deserialize(value: Buffer): number;
                                    serialize(
                                        _value: (...) | (...),
                                        __namedParameters: {
                                            _computingGasLimit?: ...;
                                            buildTx: ...;
                                            rebuildTx: ...;
                                            tag: ...;
                                            unpackTx: ...;
                                        },
                                        __namedParameters: { gasMax?: ... },
                                    ): Buffer;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCallContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "abiVersion"
                    | "gasPrice"
                    | "version"
                    | "gasLimit",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            caller: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: undefined | number,
                                    __namedParameters: {
                                        _computingGasLimit?: (...) | (...);
                                        buildTx: (params: ...) => ...;
                                        rebuildTx: (params: ...) => ...;
                                        tag: Tag;
                                        unpackTx: <TxType extends ...>(
                                            encodedTx: ...,
                                            txType?: ...,
                                        ) => ...;
                                    },
                                    __namedParameters: { gasMax?: (...) | (...) },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                                serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                gasMax?: number;
            } & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        calls: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        channels: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        contracts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        ns: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        oracles: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                calls: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                channels: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                contracts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                ns: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                oracles: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: TreesPoi;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            calls: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            channels: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            contracts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            ns: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            oracles: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => TreesPoi;
                                serialize: (value: TreesPoi) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: 0) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: MapAccounts;
                                calls: MapCalls;
                                channels: MapChannels;
                                contracts: MapContracts;
                                ns: MapNames;
                                oracles: MapOracles;
                                tag: {
                                    constValue: StateTrees;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 0;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => StateTrees;
                                serialize: (value: StateTrees) => Buffer;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 0;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                tag: {
                                    constValue: Mtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                values: EntryMtreeValueArray;
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Mtree;
                                serialize: (value: Mtree) => Buffer;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                key: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: MtreeValue;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                value: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => MtreeValue;
                                serialize: (value: MtreeValue) => Buffer;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapContracts;
                                tag: {
                                    constValue: ContractsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractsMtree;
                                serialize: (value: ContractsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapCalls;
                                tag: {
                                    constValue: CallsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => CallsMtree;
                                serialize: (value: CallsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapChannels;
                                tag: {
                                    constValue: ChannelsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelsMtree;
                                serialize: (value: ChannelsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapNames;
                                tag: {
                                    constValue: NameserviceMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => NameserviceMtree;
                                serialize: (value: NameserviceMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapOracles;
                                tag: {
                                    constValue: OraclesMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => OraclesMtree;
                                serialize: (value: OraclesMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapAccounts;
                                tag: {
                                    constValue: AccountsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => AccountsMtree;
                                serialize: (value: AccountsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${string}`;
                            serialize: (value: `th_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                fee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: GaMetaTxAuthData;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                txHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "fee"
                    | "gasPrice"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => GaMetaTxAuthData;
                                serialize: (value: GaMetaTxAuthData) => Buffer;
                            };
                            txHash: {
                                deserialize: (value: Buffer) => `th_${(...)}`;
                                serialize: (value: `th_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined }
        ) & { tag: Account },
    >;
    calls: Record<
        `ba_${string}`,
        (
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    never,
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value: 1) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                            serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                flags: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gaAuthFun: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gaContract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            gaContract: {
                                deserialize: (value: Buffer) => (...) | (...);
                                serialize: (value: (...) | (...)) => Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: (...)[]) => (...)[];
                            serialize: (pointers: (...)[]) => (...)[];
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                clientTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                nameTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                pointers: <AllowRaw extends boolean>(
                                    allowRaw: AllowRaw,
                                ) => { deserialize: ...; serialize: ... };
                                status: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: Name;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => {
                                deserialize: (pointers: ...) => ...;
                                serialize: (pointers: ...) => ...;
                            };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Name;
                                serialize: (value: Name) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                            serialize: (
                                value: readonly `ak_${(...)}`[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                active: {
                                    deserialize(buffer: Buffer): boolean;
                                    serialize(value: boolean): Buffer;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                log: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                referers: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: Contract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "deposit"
                    | "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            referers: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Contract;
                                serialize: (value: Contract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: Buffer[], params: unknown) => Buffer[];
                            serialize: (
                                value: readonly Uint8Array[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callerId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callerNonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                contractId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gasUsed: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                height: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                log: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                returnType: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                returnValue: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ContractCall;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            returnType: {
                                deserialize: (value: Buffer) => CallReturnType;
                                serialize: (value: CallReturnType) => Buffer;
                            };
                            returnValue: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractCall;
                                serialize: (value: ContractCall) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                oracleTtlValue: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                queryFee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                queryFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                responseFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                tag: {
                                    constValue: Oracle;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "queryFee"
                    | "abiVersion"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Oracle;
                                serialize: (value: Oracle) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${string}`;
                            serialize: (value: `st_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: 3) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                channelAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                channelReserve: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiator: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiatorAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                lockedUntil: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                lockPeriod: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responder: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responderAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                round: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                soloRound: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                stateHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: Channel;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 3;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            responderDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: Buffer) => `st_${(...)}`;
                                serialize: (value: `st_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Channel;
                                serialize: (value: Channel) => Buffer;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 3;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateTransfer;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                to: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                                serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                            };
                            to: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateDeposit;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                                serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateWithdraw;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                                serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCreateContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                                serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            > & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: number;
                                    buildTx: (params: TxParams) => `tx_${(...)}`;
                                    rebuildTx: (params: any) => any;
                                    tag: Tag;
                                    unpackTx: <TxType extends Tag>(
                                        encodedTx: (...) | (...) | (...) | (...),
                                        txType?: (...) | (...),
                                    ) => TxUnpacked & { tag: TxType; };
                                },
                                __namedParameters: { gasMax?: number },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                caller: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callStack: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                contract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasLimit: {
                                    deserialize(value: Buffer): number;
                                    serialize(
                                        _value: (...) | (...),
                                        __namedParameters: {
                                            _computingGasLimit?: ...;
                                            buildTx: ...;
                                            rebuildTx: ...;
                                            tag: ...;
                                            unpackTx: ...;
                                        },
                                        __namedParameters: { gasMax?: ... },
                                    ): Buffer;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCallContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "abiVersion"
                    | "gasPrice"
                    | "version"
                    | "gasLimit",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            caller: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: undefined | number,
                                    __namedParameters: {
                                        _computingGasLimit?: (...) | (...);
                                        buildTx: (params: ...) => ...;
                                        rebuildTx: (params: ...) => ...;
                                        tag: Tag;
                                        unpackTx: <TxType extends ...>(
                                            encodedTx: ...,
                                            txType?: ...,
                                        ) => ...;
                                    },
                                    __namedParameters: { gasMax?: (...) | (...) },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                                serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                gasMax?: number;
            } & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        calls: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        channels: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        contracts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        ns: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        oracles: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                calls: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                channels: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                contracts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                ns: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                oracles: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: TreesPoi;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            calls: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            channels: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            contracts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            ns: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            oracles: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => TreesPoi;
                                serialize: (value: TreesPoi) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: 0) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: MapAccounts;
                                calls: MapCalls;
                                channels: MapChannels;
                                contracts: MapContracts;
                                ns: MapNames;
                                oracles: MapOracles;
                                tag: {
                                    constValue: StateTrees;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 0;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => StateTrees;
                                serialize: (value: StateTrees) => Buffer;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 0;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                tag: {
                                    constValue: Mtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                values: EntryMtreeValueArray;
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Mtree;
                                serialize: (value: Mtree) => Buffer;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                key: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: MtreeValue;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                value: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => MtreeValue;
                                serialize: (value: MtreeValue) => Buffer;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapContracts;
                                tag: {
                                    constValue: ContractsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractsMtree;
                                serialize: (value: ContractsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapCalls;
                                tag: {
                                    constValue: CallsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => CallsMtree;
                                serialize: (value: CallsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapChannels;
                                tag: {
                                    constValue: ChannelsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelsMtree;
                                serialize: (value: ChannelsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapNames;
                                tag: {
                                    constValue: NameserviceMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => NameserviceMtree;
                                serialize: (value: NameserviceMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapOracles;
                                tag: {
                                    constValue: OraclesMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => OraclesMtree;
                                serialize: (value: OraclesMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapAccounts;
                                tag: {
                                    constValue: AccountsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => AccountsMtree;
                                serialize: (value: AccountsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${string}`;
                            serialize: (value: `th_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                fee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: GaMetaTxAuthData;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                txHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "fee"
                    | "gasPrice"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => GaMetaTxAuthData;
                                serialize: (value: GaMetaTxAuthData) => Buffer;
                            };
                            txHash: {
                                deserialize: (value: Buffer) => `th_${(...)}`;
                                serialize: (value: `th_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined }
        ) & { tag: ContractCall },
    >;
    channels: Record<
        `ch_${string}`,
        (
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    never,
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value: 1) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                            serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                flags: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gaAuthFun: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gaContract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            gaContract: {
                                deserialize: (value: Buffer) => (...) | (...);
                                serialize: (value: (...) | (...)) => Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: (...)[]) => (...)[];
                            serialize: (pointers: (...)[]) => (...)[];
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                clientTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                nameTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                pointers: <AllowRaw extends boolean>(
                                    allowRaw: AllowRaw,
                                ) => { deserialize: ...; serialize: ... };
                                status: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: Name;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => {
                                deserialize: (pointers: ...) => ...;
                                serialize: (pointers: ...) => ...;
                            };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Name;
                                serialize: (value: Name) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                            serialize: (
                                value: readonly `ak_${(...)}`[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                active: {
                                    deserialize(buffer: Buffer): boolean;
                                    serialize(value: boolean): Buffer;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                log: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                referers: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: Contract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "deposit"
                    | "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            referers: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Contract;
                                serialize: (value: Contract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: Buffer[], params: unknown) => Buffer[];
                            serialize: (
                                value: readonly Uint8Array[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callerId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callerNonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                contractId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gasUsed: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                height: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                log: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                returnType: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                returnValue: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ContractCall;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            returnType: {
                                deserialize: (value: Buffer) => CallReturnType;
                                serialize: (value: CallReturnType) => Buffer;
                            };
                            returnValue: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractCall;
                                serialize: (value: ContractCall) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                oracleTtlValue: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                queryFee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                queryFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                responseFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                tag: {
                                    constValue: Oracle;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "queryFee"
                    | "abiVersion"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Oracle;
                                serialize: (value: Oracle) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${string}`;
                            serialize: (value: `st_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: 3) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                channelAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                channelReserve: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiator: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiatorAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                lockedUntil: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                lockPeriod: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responder: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responderAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                round: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                soloRound: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                stateHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: Channel;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 3;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            responderDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: Buffer) => `st_${(...)}`;
                                serialize: (value: `st_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Channel;
                                serialize: (value: Channel) => Buffer;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 3;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateTransfer;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                to: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                                serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                            };
                            to: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateDeposit;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                                serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateWithdraw;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                                serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCreateContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                                serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            > & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: number;
                                    buildTx: (params: TxParams) => `tx_${(...)}`;
                                    rebuildTx: (params: any) => any;
                                    tag: Tag;
                                    unpackTx: <TxType extends Tag>(
                                        encodedTx: (...) | (...) | (...) | (...),
                                        txType?: (...) | (...),
                                    ) => TxUnpacked & { tag: TxType; };
                                },
                                __namedParameters: { gasMax?: number },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                caller: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callStack: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                contract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasLimit: {
                                    deserialize(value: Buffer): number;
                                    serialize(
                                        _value: (...) | (...),
                                        __namedParameters: {
                                            _computingGasLimit?: ...;
                                            buildTx: ...;
                                            rebuildTx: ...;
                                            tag: ...;
                                            unpackTx: ...;
                                        },
                                        __namedParameters: { gasMax?: ... },
                                    ): Buffer;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCallContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "abiVersion"
                    | "gasPrice"
                    | "version"
                    | "gasLimit",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            caller: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: undefined | number,
                                    __namedParameters: {
                                        _computingGasLimit?: (...) | (...);
                                        buildTx: (params: ...) => ...;
                                        rebuildTx: (params: ...) => ...;
                                        tag: Tag;
                                        unpackTx: <TxType extends ...>(
                                            encodedTx: ...,
                                            txType?: ...,
                                        ) => ...;
                                    },
                                    __namedParameters: { gasMax?: (...) | (...) },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                                serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                gasMax?: number;
            } & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        calls: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        channels: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        contracts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        ns: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        oracles: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                calls: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                channels: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                contracts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                ns: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                oracles: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: TreesPoi;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            calls: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            channels: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            contracts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            ns: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            oracles: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => TreesPoi;
                                serialize: (value: TreesPoi) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: 0) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: MapAccounts;
                                calls: MapCalls;
                                channels: MapChannels;
                                contracts: MapContracts;
                                ns: MapNames;
                                oracles: MapOracles;
                                tag: {
                                    constValue: StateTrees;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 0;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => StateTrees;
                                serialize: (value: StateTrees) => Buffer;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 0;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                tag: {
                                    constValue: Mtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                values: EntryMtreeValueArray;
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Mtree;
                                serialize: (value: Mtree) => Buffer;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                key: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: MtreeValue;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                value: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => MtreeValue;
                                serialize: (value: MtreeValue) => Buffer;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapContracts;
                                tag: {
                                    constValue: ContractsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractsMtree;
                                serialize: (value: ContractsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapCalls;
                                tag: {
                                    constValue: CallsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => CallsMtree;
                                serialize: (value: CallsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapChannels;
                                tag: {
                                    constValue: ChannelsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelsMtree;
                                serialize: (value: ChannelsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapNames;
                                tag: {
                                    constValue: NameserviceMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => NameserviceMtree;
                                serialize: (value: NameserviceMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapOracles;
                                tag: {
                                    constValue: OraclesMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => OraclesMtree;
                                serialize: (value: OraclesMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapAccounts;
                                tag: {
                                    constValue: AccountsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => AccountsMtree;
                                serialize: (value: AccountsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${string}`;
                            serialize: (value: `th_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                fee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: GaMetaTxAuthData;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                txHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "fee"
                    | "gasPrice"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => GaMetaTxAuthData;
                                serialize: (value: GaMetaTxAuthData) => Buffer;
                            };
                            txHash: {
                                deserialize: (value: Buffer) => `th_${(...)}`;
                                serialize: (value: `th_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined }
        ) & { tag: Channel },
    >;
    contracts: Record<
        `ct_${string}`,
        (
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    never,
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value: 1) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                            serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                flags: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gaAuthFun: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gaContract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            gaContract: {
                                deserialize: (value: Buffer) => (...) | (...);
                                serialize: (value: (...) | (...)) => Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: (...)[]) => (...)[];
                            serialize: (pointers: (...)[]) => (...)[];
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                clientTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                nameTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                pointers: <AllowRaw extends boolean>(
                                    allowRaw: AllowRaw,
                                ) => { deserialize: ...; serialize: ... };
                                status: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: Name;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => {
                                deserialize: (pointers: ...) => ...;
                                serialize: (pointers: ...) => ...;
                            };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Name;
                                serialize: (value: Name) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                            serialize: (
                                value: readonly `ak_${(...)}`[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                active: {
                                    deserialize(buffer: Buffer): boolean;
                                    serialize(value: boolean): Buffer;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                log: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                referers: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: Contract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "deposit"
                    | "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            referers: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Contract;
                                serialize: (value: Contract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: Buffer[], params: unknown) => Buffer[];
                            serialize: (
                                value: readonly Uint8Array[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callerId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callerNonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                contractId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gasUsed: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                height: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                log: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                returnType: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                returnValue: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ContractCall;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            returnType: {
                                deserialize: (value: Buffer) => CallReturnType;
                                serialize: (value: CallReturnType) => Buffer;
                            };
                            returnValue: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractCall;
                                serialize: (value: ContractCall) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                oracleTtlValue: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                queryFee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                queryFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                responseFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                tag: {
                                    constValue: Oracle;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "queryFee"
                    | "abiVersion"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Oracle;
                                serialize: (value: Oracle) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${string}`;
                            serialize: (value: `st_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: 3) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                channelAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                channelReserve: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiator: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiatorAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                lockedUntil: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                lockPeriod: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responder: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responderAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                round: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                soloRound: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                stateHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: Channel;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 3;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            responderDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: Buffer) => `st_${(...)}`;
                                serialize: (value: `st_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Channel;
                                serialize: (value: Channel) => Buffer;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 3;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateTransfer;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                to: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                                serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                            };
                            to: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateDeposit;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                                serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateWithdraw;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                                serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCreateContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                                serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            > & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: number;
                                    buildTx: (params: TxParams) => `tx_${(...)}`;
                                    rebuildTx: (params: any) => any;
                                    tag: Tag;
                                    unpackTx: <TxType extends Tag>(
                                        encodedTx: (...) | (...) | (...) | (...),
                                        txType?: (...) | (...),
                                    ) => TxUnpacked & { tag: TxType; };
                                },
                                __namedParameters: { gasMax?: number },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                caller: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callStack: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                contract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasLimit: {
                                    deserialize(value: Buffer): number;
                                    serialize(
                                        _value: (...) | (...),
                                        __namedParameters: {
                                            _computingGasLimit?: ...;
                                            buildTx: ...;
                                            rebuildTx: ...;
                                            tag: ...;
                                            unpackTx: ...;
                                        },
                                        __namedParameters: { gasMax?: ... },
                                    ): Buffer;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCallContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "abiVersion"
                    | "gasPrice"
                    | "version"
                    | "gasLimit",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            caller: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: undefined | number,
                                    __namedParameters: {
                                        _computingGasLimit?: (...) | (...);
                                        buildTx: (params: ...) => ...;
                                        rebuildTx: (params: ...) => ...;
                                        tag: Tag;
                                        unpackTx: <TxType extends ...>(
                                            encodedTx: ...,
                                            txType?: ...,
                                        ) => ...;
                                    },
                                    __namedParameters: { gasMax?: (...) | (...) },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                                serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                gasMax?: number;
            } & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        calls: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        channels: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        contracts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        ns: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        oracles: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                calls: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                channels: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                contracts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                ns: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                oracles: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: TreesPoi;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            calls: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            channels: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            contracts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            ns: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            oracles: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => TreesPoi;
                                serialize: (value: TreesPoi) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: 0) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: MapAccounts;
                                calls: MapCalls;
                                channels: MapChannels;
                                contracts: MapContracts;
                                ns: MapNames;
                                oracles: MapOracles;
                                tag: {
                                    constValue: StateTrees;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 0;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => StateTrees;
                                serialize: (value: StateTrees) => Buffer;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 0;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                tag: {
                                    constValue: Mtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                values: EntryMtreeValueArray;
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Mtree;
                                serialize: (value: Mtree) => Buffer;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                key: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: MtreeValue;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                value: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => MtreeValue;
                                serialize: (value: MtreeValue) => Buffer;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapContracts;
                                tag: {
                                    constValue: ContractsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractsMtree;
                                serialize: (value: ContractsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapCalls;
                                tag: {
                                    constValue: CallsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => CallsMtree;
                                serialize: (value: CallsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapChannels;
                                tag: {
                                    constValue: ChannelsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelsMtree;
                                serialize: (value: ChannelsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapNames;
                                tag: {
                                    constValue: NameserviceMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => NameserviceMtree;
                                serialize: (value: NameserviceMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapOracles;
                                tag: {
                                    constValue: OraclesMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => OraclesMtree;
                                serialize: (value: OraclesMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapAccounts;
                                tag: {
                                    constValue: AccountsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => AccountsMtree;
                                serialize: (value: AccountsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${string}`;
                            serialize: (value: `th_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                fee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: GaMetaTxAuthData;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                txHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "fee"
                    | "gasPrice"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => GaMetaTxAuthData;
                                serialize: (value: GaMetaTxAuthData) => Buffer;
                            };
                            txHash: {
                                deserialize: (value: Buffer) => `th_${(...)}`;
                                serialize: (value: `th_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined }
        ) & { tag: Contract },
    >;
    ns: Record<
        `nm_${string}`,
        (
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    never,
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value: 1) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                            serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                flags: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gaAuthFun: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gaContract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            gaContract: {
                                deserialize: (value: Buffer) => (...) | (...);
                                serialize: (value: (...) | (...)) => Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: (...)[]) => (...)[];
                            serialize: (pointers: (...)[]) => (...)[];
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                clientTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                nameTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                pointers: <AllowRaw extends boolean>(
                                    allowRaw: AllowRaw,
                                ) => { deserialize: ...; serialize: ... };
                                status: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: Name;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => {
                                deserialize: (pointers: ...) => ...;
                                serialize: (pointers: ...) => ...;
                            };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Name;
                                serialize: (value: Name) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                            serialize: (
                                value: readonly `ak_${(...)}`[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                active: {
                                    deserialize(buffer: Buffer): boolean;
                                    serialize(value: boolean): Buffer;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                log: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                referers: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: Contract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "deposit"
                    | "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            referers: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Contract;
                                serialize: (value: Contract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: Buffer[], params: unknown) => Buffer[];
                            serialize: (
                                value: readonly Uint8Array[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callerId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callerNonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                contractId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gasUsed: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                height: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                log: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                returnType: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                returnValue: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ContractCall;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            returnType: {
                                deserialize: (value: Buffer) => CallReturnType;
                                serialize: (value: CallReturnType) => Buffer;
                            };
                            returnValue: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractCall;
                                serialize: (value: ContractCall) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                oracleTtlValue: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                queryFee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                queryFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                responseFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                tag: {
                                    constValue: Oracle;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "queryFee"
                    | "abiVersion"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Oracle;
                                serialize: (value: Oracle) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${string}`;
                            serialize: (value: `st_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: 3) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                channelAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                channelReserve: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiator: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiatorAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                lockedUntil: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                lockPeriod: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responder: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responderAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                round: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                soloRound: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                stateHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: Channel;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 3;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            responderDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: Buffer) => `st_${(...)}`;
                                serialize: (value: `st_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Channel;
                                serialize: (value: Channel) => Buffer;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 3;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateTransfer;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                to: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                                serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                            };
                            to: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateDeposit;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                                serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateWithdraw;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                                serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCreateContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                                serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            > & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: number;
                                    buildTx: (params: TxParams) => `tx_${(...)}`;
                                    rebuildTx: (params: any) => any;
                                    tag: Tag;
                                    unpackTx: <TxType extends Tag>(
                                        encodedTx: (...) | (...) | (...) | (...),
                                        txType?: (...) | (...),
                                    ) => TxUnpacked & { tag: TxType; };
                                },
                                __namedParameters: { gasMax?: number },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                caller: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callStack: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                contract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasLimit: {
                                    deserialize(value: Buffer): number;
                                    serialize(
                                        _value: (...) | (...),
                                        __namedParameters: {
                                            _computingGasLimit?: ...;
                                            buildTx: ...;
                                            rebuildTx: ...;
                                            tag: ...;
                                            unpackTx: ...;
                                        },
                                        __namedParameters: { gasMax?: ... },
                                    ): Buffer;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCallContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "abiVersion"
                    | "gasPrice"
                    | "version"
                    | "gasLimit",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            caller: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: undefined | number,
                                    __namedParameters: {
                                        _computingGasLimit?: (...) | (...);
                                        buildTx: (params: ...) => ...;
                                        rebuildTx: (params: ...) => ...;
                                        tag: Tag;
                                        unpackTx: <TxType extends ...>(
                                            encodedTx: ...,
                                            txType?: ...,
                                        ) => ...;
                                    },
                                    __namedParameters: { gasMax?: (...) | (...) },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                                serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                gasMax?: number;
            } & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        calls: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        channels: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        contracts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        ns: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        oracles: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                calls: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                channels: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                contracts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                ns: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                oracles: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: TreesPoi;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            calls: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            channels: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            contracts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            ns: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            oracles: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => TreesPoi;
                                serialize: (value: TreesPoi) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: 0) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: MapAccounts;
                                calls: MapCalls;
                                channels: MapChannels;
                                contracts: MapContracts;
                                ns: MapNames;
                                oracles: MapOracles;
                                tag: {
                                    constValue: StateTrees;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 0;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => StateTrees;
                                serialize: (value: StateTrees) => Buffer;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 0;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                tag: {
                                    constValue: Mtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                values: EntryMtreeValueArray;
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Mtree;
                                serialize: (value: Mtree) => Buffer;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                key: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: MtreeValue;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                value: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => MtreeValue;
                                serialize: (value: MtreeValue) => Buffer;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapContracts;
                                tag: {
                                    constValue: ContractsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractsMtree;
                                serialize: (value: ContractsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapCalls;
                                tag: {
                                    constValue: CallsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => CallsMtree;
                                serialize: (value: CallsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapChannels;
                                tag: {
                                    constValue: ChannelsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelsMtree;
                                serialize: (value: ChannelsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapNames;
                                tag: {
                                    constValue: NameserviceMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => NameserviceMtree;
                                serialize: (value: NameserviceMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapOracles;
                                tag: {
                                    constValue: OraclesMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => OraclesMtree;
                                serialize: (value: OraclesMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapAccounts;
                                tag: {
                                    constValue: AccountsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => AccountsMtree;
                                serialize: (value: AccountsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${string}`;
                            serialize: (value: `th_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                fee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: GaMetaTxAuthData;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                txHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "fee"
                    | "gasPrice"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => GaMetaTxAuthData;
                                serialize: (value: GaMetaTxAuthData) => Buffer;
                            };
                            txHash: {
                                deserialize: (value: Buffer) => `th_${(...)}`;
                                serialize: (value: `th_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined }
        ) & { tag: Name },
    >;
    oracles: Record<
        `ok_${string}`,
        (
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    never,
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value: 1) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                            serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                balance: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                flags: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gaAuthFun: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gaContract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                nonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                tag: {
                                    constValue: Account;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            gaContract: {
                                deserialize: (value: Buffer) => (...) | (...);
                                serialize: (value: (...) | (...)) => Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Account;
                                serialize: (value: Account) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: (...)[]) => (...)[];
                            serialize: (pointers: (...)[]) => (...)[];
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                clientTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                nameTtl: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                pointers: <AllowRaw extends boolean>(
                                    allowRaw: AllowRaw,
                                ) => { deserialize: ...; serialize: ... };
                                status: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: Name;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => {
                                deserialize: (pointers: ...) => ...;
                                serialize: (pointers: ...) => ...;
                            };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Name;
                                serialize: (value: Name) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                            serialize: (
                                value: readonly `ak_${(...)}`[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                active: {
                                    deserialize(buffer: Buffer): boolean;
                                    serialize(value: boolean): Buffer;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                log: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                referers: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: Contract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "deposit"
                    | "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            referers: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Contract;
                                serialize: (value: Contract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: Buffer[], params: unknown) => Buffer[];
                            serialize: (
                                value: readonly Uint8Array[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: 2) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callerId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callerNonce: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                contractId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                gasUsed: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                height: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                log: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                returnType: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                returnValue: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ContractCall;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 2;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            returnType: {
                                deserialize: (value: Buffer) => CallReturnType;
                                serialize: (value: CallReturnType) => Buffer;
                            };
                            returnValue: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractCall;
                                serialize: (value: ContractCall) => Buffer;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 2;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                accountId: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                oracleTtlValue: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                queryFee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                queryFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                responseFormat: {
                                    deserialize(buffer: Buffer): string;
                                    serialize(string: string): Buffer;
                                };
                                tag: {
                                    constValue: Oracle;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "queryFee"
                    | "abiVersion"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Oracle;
                                serialize: (value: Oracle) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                consensusProtocolVersion?: Ceres;
            }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (
                                value: Buffer[],
                                params: unknown,
                            ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                            serialize: (
                                value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                                params: unknown,
                            ) => Buffer[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${string}`;
                            serialize: (value: `st_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: 3) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                channelAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                channelReserve: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiator: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                initiatorAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                initiatorDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                lockedUntil: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                lockPeriod: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responder: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderAmount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                responderAuth: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                responderDelegateIds: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                round: {
                                    deserialize(value: Buffer): number;
                                    serialize(value: number): Buffer;
                                };
                                soloRound: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                stateHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: Channel;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 3;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            responderDelegateIds: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: Buffer) => `st_${(...)}`;
                                serialize: (value: `st_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Channel;
                                serialize: (value: Channel) => Buffer;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 3;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateTransfer;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                to: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                                serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                            };
                            to: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateDeposit;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                                serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                from: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateWithdraw;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                                serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<undefined | CtVersion>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                code: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                ctVersion: {
                                    deserialize(buffer: Buffer): CtVersion;
                                    prepare(
                                        value: (...) | (...),
                                        params: {},
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: (...) | (...),
                                        params: {},
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                deposit: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                owner: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCreateContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version"
                    | "ctVersion",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            code: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: undefined | CtVersion,
                                    params: {},
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(...) | (...)>;
                                serialize(
                                    value: undefined | CtVersion,
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                                serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            > & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: Ceres },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${string}`;
                            serialize: (value: `cb_${string}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${string}`;
                            serialize: (value: `ak_${string}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${string}`;
                            serialize: (value: `ct_${string}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: number;
                                    buildTx: (params: TxParams) => `tx_${(...)}`;
                                    rebuildTx: (params: any) => any;
                                    tag: Tag;
                                    unpackTx: <TxType extends Tag>(
                                        encodedTx: (...) | (...) | (...) | (...),
                                        txType?: (...) | (...),
                                    ) => TxUnpacked & { tag: TxType; };
                                },
                                __namedParameters: { gasMax?: number },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                abiVersion: {
                                    _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                    deserialize(buffer: Buffer): AbiVersion;
                                    prepare(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        options: { consensusProtocolVersion?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: AbiVersion | undefined,
                                        __namedParameters: { tag: ... },
                                        __namedParameters: { consensusProtocolVersion?: ... },
                                    ): Buffer;
                                };
                                amount: {
                                    deserialize(value: Buffer): string;
                                    serialize(value: Int): Buffer;
                                };
                                callData: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                caller: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                callStack: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                contract: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                gasLimit: {
                                    deserialize(value: Buffer): number;
                                    serialize(
                                        _value: (...) | (...),
                                        __namedParameters: {
                                            _computingGasLimit?: ...;
                                            buildTx: ...;
                                            rebuildTx: ...;
                                            tag: ...;
                                            unpackTx: ...;
                                        },
                                        __namedParameters: { gasMax?: ... },
                                    ): Buffer;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: ChannelOffChainUpdateCallContract;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "abiVersion"
                    | "gasPrice"
                    | "version"
                    | "gasLimit",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    options: {
                                        consensusProtocolVersion?: (...) | (...);
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(AbiVersion | undefined)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: Tag },
                                    __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: Buffer) => `cb_${(...)}`;
                                serialize: (value: `cb_${(...)}`) => Buffer;
                            };
                            caller: {
                                deserialize: (value: Buffer) => `ak_${(...)}`;
                                serialize: (value: `ak_${(...)}`) => Buffer;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: Buffer) => `ct_${(...)}`;
                                serialize: (value: `ct_${(...)}`) => Buffer;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: undefined | number,
                                    __namedParameters: {
                                        _computingGasLimit?: (...) | (...);
                                        buildTx: (params: ...) => ...;
                                        rebuildTx: (params: ...) => ...;
                                        tag: Tag;
                                        unpackTx: <TxType extends ...>(
                                            encodedTx: ...,
                                            txType?: ...,
                                        ) => ...;
                                    },
                                    __namedParameters: { gasMax?: (...) | (...) },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                                serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
                gasMax?: number;
            } & { consensusProtocolVersion?: Ceres }
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        calls: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        channels: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        contracts: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        ns: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        oracles: {
                            deserialize: (
                                value: MPTreeBinary[],
                                params: unknown,
                            ) => MPTree<(...), (...)>[];
                            serialize: (
                                value: readonly MPTree<(...), (...)>[],
                                params: unknown,
                            ) => MPTreeBinary[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                calls: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                channels: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                contracts: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                ns: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                oracles: {
                                    deserialize: (value: ..., params: ...) => ...;
                                    serialize: (value: ..., params: ...) => ...;
                                };
                                tag: {
                                    constValue: TreesPoi;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            calls: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            channels: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            contracts: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            ns: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            oracles: {
                                deserialize: (value: (...)[], params: unknown) => (...)[];
                                serialize: (value: readonly (...)[], params: unknown) => (...)[];
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => TreesPoi;
                                serialize: (value: TreesPoi) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: 0) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                accounts: MapAccounts;
                                calls: MapCalls;
                                channels: MapChannels;
                                contracts: MapContracts;
                                ns: MapNames;
                                oracles: MapOracles;
                                tag: {
                                    constValue: StateTrees;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 0;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => StateTrees;
                                serialize: (value: StateTrees) => Buffer;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 0;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                tag: {
                                    constValue: Mtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                values: EntryMtreeValueArray;
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => Mtree;
                                serialize: (value: Mtree) => Buffer;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                key: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                tag: {
                                    constValue: MtreeValue;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                value: {
                                    deserialize(buffer: Buffer): Buffer;
                                    serialize(buffer: Uint8Array): Buffer;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => MtreeValue;
                                serialize: (value: MtreeValue) => Buffer;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapContracts;
                                tag: {
                                    constValue: ContractsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ContractsMtree;
                                serialize: (value: ContractsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapCalls;
                                tag: {
                                    constValue: CallsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => CallsMtree;
                                serialize: (value: CallsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapChannels;
                                tag: {
                                    constValue: ChannelsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => ChannelsMtree;
                                serialize: (value: ChannelsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapNames;
                                tag: {
                                    constValue: NameserviceMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => NameserviceMtree;
                                serialize: (value: NameserviceMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapOracles;
                                tag: {
                                    constValue: OraclesMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => OraclesMtree;
                                serialize: (value: OraclesMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                payload: MapAccounts;
                                tag: {
                                    constValue: AccountsMtree;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => AccountsMtree;
                                serialize: (value: AccountsMtree) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >
            | TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: Node;
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${string}`;
                            serialize: (value: `th_${string}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: 1) => Buffer;
                        };
                    },
                    true,
                >,
            > & Partial<
                Pick<
                    TxParamsBySchemaInternal<
                        PickIsRec<
                            {
                                fee: {
                                    deserialize(value: Buffer): string;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(
                                        value: (...) | (...),
                                        params: {},
                                        options: {},
                                    ): string;
                                };
                                gasPrice: {
                                    deserialize(value: Buffer): string;
                                    prepare(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ...; onNode?: ... },
                                    ): Promise<(...)>;
                                    serialize(
                                        value: Int | undefined,
                                        params: {},
                                        __namedParameters: { denomination?: ... },
                                    ): Buffer;
                                    serializeAettos(value?: (...) | (...)): string;
                                };
                                tag: {
                                    constValue: GaMetaTxAuthData;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                txHash: {
                                    deserialize: (value: ...) => ...;
                                    serialize: (value: ...) => ...;
                                };
                                version: {
                                    constValue: 1;
                                    constValueOptional: boolean;
                                    deserialize: (value: ...) => ...;
                                    serialize: (value?: ...) => ...;
                                };
                            },
                            false,
                        >,
                    >,
                    "fee"
                    | "gasPrice"
                    | "version",
                >,
            > & Omit<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(
                                    value: undefined | string,
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: {
                                        denomination?: AE_AMOUNT_FORMATS | undefined;
                                        onNode?: (...) | (...);
                                    },
                                ): Promise<(Int | undefined)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                                ): Buffer;
                                serializeAettos(value?: undefined | string): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => GaMetaTxAuthData;
                                serialize: (value: GaMetaTxAuthData) => Buffer;
                            };
                            txHash: {
                                deserialize: (value: Buffer) => `th_${(...)}`;
                                serialize: (value: `th_${(...)}`) => Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: Buffer) => 1;
                                serialize: (value?: (...) | (...)) => Buffer;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            > & { denomination?: AE_AMOUNT_FORMATS | undefined }
        ) & { tag: Oracle },
    >;
    tag: StateTrees;
    version?: 0;
}

Hierarchy (View Summary)

Properties

accounts: Record<
    `ak_${string}`,
    (
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            never,
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    flags: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gaAuthFun: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    gaContract: {
                        deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                        serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gaContract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => (...) | (...);
                            serialize: (value: (...) | (...)) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    clientTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    nameTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    pointers: <AllowRaw extends boolean>(
                        allowRaw: AllowRaw,
                    ) => {
                        deserialize: (pointers: (...)[]) => (...)[];
                        serialize: (pointers: (...)[]) => (...)[];
                    };
                    status: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: Name;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Name;
                        serialize: (value: Name) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => { deserialize: ...; serialize: ... };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: ...) => ...;
                            serialize: (pointers: ...) => ...;
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    active: {
                        deserialize(buffer: Buffer): boolean;
                        serialize(value: boolean): Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    log: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    referers: {
                        deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                        serialize: (
                            value: readonly `ak_${(...)}`[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    tag: {
                        constValue: Contract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Contract;
                        serialize: (value: Contract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            referers: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "deposit"
            | "version"
            | "ctVersion",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callerId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callerNonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    contractId: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gasUsed: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    height: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    log: {
                        deserialize: (value: Buffer[], params: unknown) => Buffer[];
                        serialize: (value: readonly Uint8Array[], params: unknown) => Buffer[];
                    };
                    returnType: {
                        deserialize: (value: Buffer) => CallReturnType;
                        serialize: (value: CallReturnType) => Buffer;
                    };
                    returnValue: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ContractCall;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractCall;
                        serialize: (value: ContractCall) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            returnType: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            returnValue: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    oracleTtlValue: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    queryFee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    queryFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    responseFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    tag: {
                        constValue: Oracle;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Oracle;
                        serialize: (value: Oracle) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "queryFee"
            | "abiVersion"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    channelAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    channelReserve: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiator: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    initiatorAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiatorAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    initiatorDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    lockedUntil: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    lockPeriod: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responder: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    responderAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responderAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    responderDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    round: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    soloRound: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    stateHash: {
                        deserialize: (value: Buffer) => `st_${string}`;
                        serialize: (value: `st_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: Channel;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Channel;
                        serialize: (value: Channel) => Buffer;
                    };
                    version: {
                        constValue: 3;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 3;
                        serialize: (value?: 3) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${(...)}`;
                            serialize: (value: `st_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateTransfer;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                        serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                    };
                    to: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            to: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateDeposit;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                        serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateWithdraw;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                        serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCreateContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                        serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version"
            | "ctVersion",
        > & { consensusProtocolVersion?: Ceres }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    caller: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callStack: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    contract: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasLimit: {
                        deserialize(value: Buffer): number;
                        serialize(
                            _value: undefined | number,
                            __namedParameters: {
                                _computingGasLimit?: number;
                                buildTx: (params: TxParams) => `tx_${(...)}`;
                                rebuildTx: (params: any) => any;
                                tag: Tag;
                                unpackTx: <TxType extends Tag>(
                                    encodedTx: (...) | (...) | (...) | (...),
                                    txType?: (...) | (...),
                                ) => TxUnpacked & { tag: TxType; };
                            },
                            __namedParameters: { gasMax?: number },
                        ): Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCallContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                        serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            caller: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: (...) | (...),
                                    __namedParameters: {
                                        _computingGasLimit?: ...;
                                        buildTx: ...;
                                        rebuildTx: ...;
                                        tag: ...;
                                        unpackTx: ...;
                                    },
                                    __namedParameters: { gasMax?: ... },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: (...) | (...);
                                    buildTx: (params: ...) => ...;
                                    rebuildTx: (params: ...) => ...;
                                    tag: Tag;
                                    unpackTx: <TxType extends ...>(encodedTx: ..., txType?: ...) => ...;
                                },
                                __namedParameters: { gasMax?: (...) | (...) },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "abiVersion"
            | "gasPrice"
            | "version"
            | "gasLimit",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & { gasMax?: number } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    calls: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    channels: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    contracts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    ns: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    oracles: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    tag: {
                        constValue: TreesPoi;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => TreesPoi;
                        serialize: (value: TreesPoi) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            calls: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            channels: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            contracts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            ns: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            oracles: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        calls: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        channels: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        contracts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        ns: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        oracles: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: MapAccounts;
                    calls: MapCalls;
                    channels: MapChannels;
                    contracts: MapContracts;
                    ns: MapNames;
                    oracles: MapOracles;
                    tag: {
                        constValue: StateTrees;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => StateTrees;
                        serialize: (value: StateTrees) => Buffer;
                    };
                    version: {
                        constValue: 0;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 0;
                        serialize: (value?: 0) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    tag: {
                        constValue: Mtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Mtree;
                        serialize: (value: Mtree) => Buffer;
                    };
                    values: EntryMtreeValueArray;
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    key: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: MtreeValue;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => MtreeValue;
                        serialize: (value: MtreeValue) => Buffer;
                    };
                    value: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapContracts;
                    tag: {
                        constValue: ContractsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractsMtree;
                        serialize: (value: ContractsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapCalls;
                    tag: {
                        constValue: CallsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => CallsMtree;
                        serialize: (value: CallsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapChannels;
                    tag: {
                        constValue: ChannelsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelsMtree;
                        serialize: (value: ChannelsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapNames;
                    tag: {
                        constValue: NameserviceMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => NameserviceMtree;
                        serialize: (value: NameserviceMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapOracles;
                    tag: {
                        constValue: OraclesMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => OraclesMtree;
                        serialize: (value: OraclesMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapAccounts;
                    tag: {
                        constValue: AccountsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => AccountsMtree;
                        serialize: (value: AccountsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    fee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: GaMetaTxAuthData;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => GaMetaTxAuthData;
                        serialize: (value: GaMetaTxAuthData) => Buffer;
                    };
                    txHash: {
                        deserialize: (value: Buffer) => `th_${string}`;
                        serialize: (value: `th_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            txHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${(...)}`;
                            serialize: (value: `th_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "fee"
            | "gasPrice"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined }
    ) & { tag: Account },
> = ...
calls: Record<
    `ba_${string}`,
    (
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            never,
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    flags: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gaAuthFun: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    gaContract: {
                        deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                        serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gaContract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => (...) | (...);
                            serialize: (value: (...) | (...)) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    clientTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    nameTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    pointers: <AllowRaw extends boolean>(
                        allowRaw: AllowRaw,
                    ) => {
                        deserialize: (pointers: (...)[]) => (...)[];
                        serialize: (pointers: (...)[]) => (...)[];
                    };
                    status: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: Name;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Name;
                        serialize: (value: Name) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => { deserialize: ...; serialize: ... };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: ...) => ...;
                            serialize: (pointers: ...) => ...;
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    active: {
                        deserialize(buffer: Buffer): boolean;
                        serialize(value: boolean): Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    log: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    referers: {
                        deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                        serialize: (
                            value: readonly `ak_${(...)}`[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    tag: {
                        constValue: Contract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Contract;
                        serialize: (value: Contract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            referers: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "deposit"
            | "version"
            | "ctVersion",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callerId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callerNonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    contractId: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gasUsed: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    height: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    log: {
                        deserialize: (value: Buffer[], params: unknown) => Buffer[];
                        serialize: (value: readonly Uint8Array[], params: unknown) => Buffer[];
                    };
                    returnType: {
                        deserialize: (value: Buffer) => CallReturnType;
                        serialize: (value: CallReturnType) => Buffer;
                    };
                    returnValue: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ContractCall;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractCall;
                        serialize: (value: ContractCall) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            returnType: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            returnValue: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    oracleTtlValue: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    queryFee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    queryFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    responseFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    tag: {
                        constValue: Oracle;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Oracle;
                        serialize: (value: Oracle) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "queryFee"
            | "abiVersion"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    channelAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    channelReserve: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiator: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    initiatorAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiatorAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    initiatorDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    lockedUntil: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    lockPeriod: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responder: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    responderAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responderAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    responderDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    round: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    soloRound: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    stateHash: {
                        deserialize: (value: Buffer) => `st_${string}`;
                        serialize: (value: `st_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: Channel;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Channel;
                        serialize: (value: Channel) => Buffer;
                    };
                    version: {
                        constValue: 3;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 3;
                        serialize: (value?: 3) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${(...)}`;
                            serialize: (value: `st_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateTransfer;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                        serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                    };
                    to: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            to: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateDeposit;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                        serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateWithdraw;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                        serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCreateContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                        serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version"
            | "ctVersion",
        > & { consensusProtocolVersion?: Ceres }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    caller: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callStack: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    contract: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasLimit: {
                        deserialize(value: Buffer): number;
                        serialize(
                            _value: undefined | number,
                            __namedParameters: {
                                _computingGasLimit?: number;
                                buildTx: (params: TxParams) => `tx_${(...)}`;
                                rebuildTx: (params: any) => any;
                                tag: Tag;
                                unpackTx: <TxType extends Tag>(
                                    encodedTx: (...) | (...) | (...) | (...),
                                    txType?: (...) | (...),
                                ) => TxUnpacked & { tag: TxType; };
                            },
                            __namedParameters: { gasMax?: number },
                        ): Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCallContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                        serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            caller: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: (...) | (...),
                                    __namedParameters: {
                                        _computingGasLimit?: ...;
                                        buildTx: ...;
                                        rebuildTx: ...;
                                        tag: ...;
                                        unpackTx: ...;
                                    },
                                    __namedParameters: { gasMax?: ... },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: (...) | (...);
                                    buildTx: (params: ...) => ...;
                                    rebuildTx: (params: ...) => ...;
                                    tag: Tag;
                                    unpackTx: <TxType extends ...>(encodedTx: ..., txType?: ...) => ...;
                                },
                                __namedParameters: { gasMax?: (...) | (...) },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "abiVersion"
            | "gasPrice"
            | "version"
            | "gasLimit",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & { gasMax?: number } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    calls: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    channels: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    contracts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    ns: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    oracles: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    tag: {
                        constValue: TreesPoi;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => TreesPoi;
                        serialize: (value: TreesPoi) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            calls: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            channels: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            contracts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            ns: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            oracles: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        calls: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        channels: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        contracts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        ns: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        oracles: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: MapAccounts;
                    calls: MapCalls;
                    channels: MapChannels;
                    contracts: MapContracts;
                    ns: MapNames;
                    oracles: MapOracles;
                    tag: {
                        constValue: StateTrees;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => StateTrees;
                        serialize: (value: StateTrees) => Buffer;
                    };
                    version: {
                        constValue: 0;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 0;
                        serialize: (value?: 0) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    tag: {
                        constValue: Mtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Mtree;
                        serialize: (value: Mtree) => Buffer;
                    };
                    values: EntryMtreeValueArray;
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    key: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: MtreeValue;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => MtreeValue;
                        serialize: (value: MtreeValue) => Buffer;
                    };
                    value: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapContracts;
                    tag: {
                        constValue: ContractsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractsMtree;
                        serialize: (value: ContractsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapCalls;
                    tag: {
                        constValue: CallsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => CallsMtree;
                        serialize: (value: CallsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapChannels;
                    tag: {
                        constValue: ChannelsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelsMtree;
                        serialize: (value: ChannelsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapNames;
                    tag: {
                        constValue: NameserviceMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => NameserviceMtree;
                        serialize: (value: NameserviceMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapOracles;
                    tag: {
                        constValue: OraclesMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => OraclesMtree;
                        serialize: (value: OraclesMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapAccounts;
                    tag: {
                        constValue: AccountsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => AccountsMtree;
                        serialize: (value: AccountsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    fee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: GaMetaTxAuthData;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => GaMetaTxAuthData;
                        serialize: (value: GaMetaTxAuthData) => Buffer;
                    };
                    txHash: {
                        deserialize: (value: Buffer) => `th_${string}`;
                        serialize: (value: `th_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            txHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${(...)}`;
                            serialize: (value: `th_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "fee"
            | "gasPrice"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined }
    ) & { tag: ContractCall },
> = ...
channels: Record<
    `ch_${string}`,
    (
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            never,
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    flags: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gaAuthFun: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    gaContract: {
                        deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                        serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gaContract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => (...) | (...);
                            serialize: (value: (...) | (...)) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    clientTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    nameTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    pointers: <AllowRaw extends boolean>(
                        allowRaw: AllowRaw,
                    ) => {
                        deserialize: (pointers: (...)[]) => (...)[];
                        serialize: (pointers: (...)[]) => (...)[];
                    };
                    status: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: Name;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Name;
                        serialize: (value: Name) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => { deserialize: ...; serialize: ... };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: ...) => ...;
                            serialize: (pointers: ...) => ...;
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    active: {
                        deserialize(buffer: Buffer): boolean;
                        serialize(value: boolean): Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    log: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    referers: {
                        deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                        serialize: (
                            value: readonly `ak_${(...)}`[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    tag: {
                        constValue: Contract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Contract;
                        serialize: (value: Contract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            referers: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "deposit"
            | "version"
            | "ctVersion",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callerId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callerNonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    contractId: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gasUsed: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    height: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    log: {
                        deserialize: (value: Buffer[], params: unknown) => Buffer[];
                        serialize: (value: readonly Uint8Array[], params: unknown) => Buffer[];
                    };
                    returnType: {
                        deserialize: (value: Buffer) => CallReturnType;
                        serialize: (value: CallReturnType) => Buffer;
                    };
                    returnValue: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ContractCall;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractCall;
                        serialize: (value: ContractCall) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            returnType: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            returnValue: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    oracleTtlValue: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    queryFee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    queryFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    responseFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    tag: {
                        constValue: Oracle;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Oracle;
                        serialize: (value: Oracle) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "queryFee"
            | "abiVersion"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    channelAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    channelReserve: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiator: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    initiatorAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiatorAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    initiatorDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    lockedUntil: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    lockPeriod: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responder: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    responderAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responderAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    responderDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    round: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    soloRound: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    stateHash: {
                        deserialize: (value: Buffer) => `st_${string}`;
                        serialize: (value: `st_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: Channel;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Channel;
                        serialize: (value: Channel) => Buffer;
                    };
                    version: {
                        constValue: 3;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 3;
                        serialize: (value?: 3) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${(...)}`;
                            serialize: (value: `st_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateTransfer;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                        serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                    };
                    to: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            to: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateDeposit;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                        serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateWithdraw;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                        serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCreateContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                        serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version"
            | "ctVersion",
        > & { consensusProtocolVersion?: Ceres }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    caller: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callStack: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    contract: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasLimit: {
                        deserialize(value: Buffer): number;
                        serialize(
                            _value: undefined | number,
                            __namedParameters: {
                                _computingGasLimit?: number;
                                buildTx: (params: TxParams) => `tx_${(...)}`;
                                rebuildTx: (params: any) => any;
                                tag: Tag;
                                unpackTx: <TxType extends Tag>(
                                    encodedTx: (...) | (...) | (...) | (...),
                                    txType?: (...) | (...),
                                ) => TxUnpacked & { tag: TxType; };
                            },
                            __namedParameters: { gasMax?: number },
                        ): Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCallContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                        serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            caller: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: (...) | (...),
                                    __namedParameters: {
                                        _computingGasLimit?: ...;
                                        buildTx: ...;
                                        rebuildTx: ...;
                                        tag: ...;
                                        unpackTx: ...;
                                    },
                                    __namedParameters: { gasMax?: ... },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: (...) | (...);
                                    buildTx: (params: ...) => ...;
                                    rebuildTx: (params: ...) => ...;
                                    tag: Tag;
                                    unpackTx: <TxType extends ...>(encodedTx: ..., txType?: ...) => ...;
                                },
                                __namedParameters: { gasMax?: (...) | (...) },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "abiVersion"
            | "gasPrice"
            | "version"
            | "gasLimit",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & { gasMax?: number } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    calls: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    channels: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    contracts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    ns: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    oracles: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    tag: {
                        constValue: TreesPoi;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => TreesPoi;
                        serialize: (value: TreesPoi) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            calls: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            channels: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            contracts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            ns: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            oracles: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        calls: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        channels: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        contracts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        ns: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        oracles: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: MapAccounts;
                    calls: MapCalls;
                    channels: MapChannels;
                    contracts: MapContracts;
                    ns: MapNames;
                    oracles: MapOracles;
                    tag: {
                        constValue: StateTrees;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => StateTrees;
                        serialize: (value: StateTrees) => Buffer;
                    };
                    version: {
                        constValue: 0;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 0;
                        serialize: (value?: 0) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    tag: {
                        constValue: Mtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Mtree;
                        serialize: (value: Mtree) => Buffer;
                    };
                    values: EntryMtreeValueArray;
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    key: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: MtreeValue;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => MtreeValue;
                        serialize: (value: MtreeValue) => Buffer;
                    };
                    value: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapContracts;
                    tag: {
                        constValue: ContractsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractsMtree;
                        serialize: (value: ContractsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapCalls;
                    tag: {
                        constValue: CallsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => CallsMtree;
                        serialize: (value: CallsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapChannels;
                    tag: {
                        constValue: ChannelsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelsMtree;
                        serialize: (value: ChannelsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapNames;
                    tag: {
                        constValue: NameserviceMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => NameserviceMtree;
                        serialize: (value: NameserviceMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapOracles;
                    tag: {
                        constValue: OraclesMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => OraclesMtree;
                        serialize: (value: OraclesMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapAccounts;
                    tag: {
                        constValue: AccountsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => AccountsMtree;
                        serialize: (value: AccountsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    fee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: GaMetaTxAuthData;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => GaMetaTxAuthData;
                        serialize: (value: GaMetaTxAuthData) => Buffer;
                    };
                    txHash: {
                        deserialize: (value: Buffer) => `th_${string}`;
                        serialize: (value: `th_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            txHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${(...)}`;
                            serialize: (value: `th_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "fee"
            | "gasPrice"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined }
    ) & { tag: Channel },
> = ...
contracts: Record<
    `ct_${string}`,
    (
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            never,
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    flags: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gaAuthFun: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    gaContract: {
                        deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                        serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gaContract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => (...) | (...);
                            serialize: (value: (...) | (...)) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    clientTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    nameTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    pointers: <AllowRaw extends boolean>(
                        allowRaw: AllowRaw,
                    ) => {
                        deserialize: (pointers: (...)[]) => (...)[];
                        serialize: (pointers: (...)[]) => (...)[];
                    };
                    status: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: Name;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Name;
                        serialize: (value: Name) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => { deserialize: ...; serialize: ... };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: ...) => ...;
                            serialize: (pointers: ...) => ...;
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    active: {
                        deserialize(buffer: Buffer): boolean;
                        serialize(value: boolean): Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    log: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    referers: {
                        deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                        serialize: (
                            value: readonly `ak_${(...)}`[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    tag: {
                        constValue: Contract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Contract;
                        serialize: (value: Contract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            referers: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "deposit"
            | "version"
            | "ctVersion",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callerId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callerNonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    contractId: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gasUsed: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    height: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    log: {
                        deserialize: (value: Buffer[], params: unknown) => Buffer[];
                        serialize: (value: readonly Uint8Array[], params: unknown) => Buffer[];
                    };
                    returnType: {
                        deserialize: (value: Buffer) => CallReturnType;
                        serialize: (value: CallReturnType) => Buffer;
                    };
                    returnValue: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ContractCall;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractCall;
                        serialize: (value: ContractCall) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            returnType: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            returnValue: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    oracleTtlValue: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    queryFee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    queryFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    responseFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    tag: {
                        constValue: Oracle;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Oracle;
                        serialize: (value: Oracle) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "queryFee"
            | "abiVersion"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    channelAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    channelReserve: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiator: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    initiatorAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiatorAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    initiatorDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    lockedUntil: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    lockPeriod: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responder: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    responderAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responderAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    responderDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    round: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    soloRound: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    stateHash: {
                        deserialize: (value: Buffer) => `st_${string}`;
                        serialize: (value: `st_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: Channel;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Channel;
                        serialize: (value: Channel) => Buffer;
                    };
                    version: {
                        constValue: 3;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 3;
                        serialize: (value?: 3) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${(...)}`;
                            serialize: (value: `st_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateTransfer;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                        serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                    };
                    to: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            to: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateDeposit;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                        serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateWithdraw;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                        serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCreateContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                        serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version"
            | "ctVersion",
        > & { consensusProtocolVersion?: Ceres }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    caller: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callStack: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    contract: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasLimit: {
                        deserialize(value: Buffer): number;
                        serialize(
                            _value: undefined | number,
                            __namedParameters: {
                                _computingGasLimit?: number;
                                buildTx: (params: TxParams) => `tx_${(...)}`;
                                rebuildTx: (params: any) => any;
                                tag: Tag;
                                unpackTx: <TxType extends Tag>(
                                    encodedTx: (...) | (...) | (...) | (...),
                                    txType?: (...) | (...),
                                ) => TxUnpacked & { tag: TxType; };
                            },
                            __namedParameters: { gasMax?: number },
                        ): Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCallContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                        serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            caller: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: (...) | (...),
                                    __namedParameters: {
                                        _computingGasLimit?: ...;
                                        buildTx: ...;
                                        rebuildTx: ...;
                                        tag: ...;
                                        unpackTx: ...;
                                    },
                                    __namedParameters: { gasMax?: ... },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: (...) | (...);
                                    buildTx: (params: ...) => ...;
                                    rebuildTx: (params: ...) => ...;
                                    tag: Tag;
                                    unpackTx: <TxType extends ...>(encodedTx: ..., txType?: ...) => ...;
                                },
                                __namedParameters: { gasMax?: (...) | (...) },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "abiVersion"
            | "gasPrice"
            | "version"
            | "gasLimit",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & { gasMax?: number } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    calls: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    channels: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    contracts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    ns: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    oracles: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    tag: {
                        constValue: TreesPoi;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => TreesPoi;
                        serialize: (value: TreesPoi) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            calls: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            channels: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            contracts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            ns: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            oracles: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        calls: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        channels: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        contracts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        ns: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        oracles: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: MapAccounts;
                    calls: MapCalls;
                    channels: MapChannels;
                    contracts: MapContracts;
                    ns: MapNames;
                    oracles: MapOracles;
                    tag: {
                        constValue: StateTrees;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => StateTrees;
                        serialize: (value: StateTrees) => Buffer;
                    };
                    version: {
                        constValue: 0;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 0;
                        serialize: (value?: 0) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    tag: {
                        constValue: Mtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Mtree;
                        serialize: (value: Mtree) => Buffer;
                    };
                    values: EntryMtreeValueArray;
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    key: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: MtreeValue;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => MtreeValue;
                        serialize: (value: MtreeValue) => Buffer;
                    };
                    value: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapContracts;
                    tag: {
                        constValue: ContractsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractsMtree;
                        serialize: (value: ContractsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapCalls;
                    tag: {
                        constValue: CallsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => CallsMtree;
                        serialize: (value: CallsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapChannels;
                    tag: {
                        constValue: ChannelsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelsMtree;
                        serialize: (value: ChannelsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapNames;
                    tag: {
                        constValue: NameserviceMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => NameserviceMtree;
                        serialize: (value: NameserviceMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapOracles;
                    tag: {
                        constValue: OraclesMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => OraclesMtree;
                        serialize: (value: OraclesMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapAccounts;
                    tag: {
                        constValue: AccountsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => AccountsMtree;
                        serialize: (value: AccountsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    fee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: GaMetaTxAuthData;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => GaMetaTxAuthData;
                        serialize: (value: GaMetaTxAuthData) => Buffer;
                    };
                    txHash: {
                        deserialize: (value: Buffer) => `th_${string}`;
                        serialize: (value: `th_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            txHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${(...)}`;
                            serialize: (value: `th_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "fee"
            | "gasPrice"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined }
    ) & { tag: Contract },
> = ...
ns: Record<
    `nm_${string}`,
    (
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            never,
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    flags: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gaAuthFun: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    gaContract: {
                        deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                        serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gaContract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => (...) | (...);
                            serialize: (value: (...) | (...)) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    clientTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    nameTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    pointers: <AllowRaw extends boolean>(
                        allowRaw: AllowRaw,
                    ) => {
                        deserialize: (pointers: (...)[]) => (...)[];
                        serialize: (pointers: (...)[]) => (...)[];
                    };
                    status: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: Name;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Name;
                        serialize: (value: Name) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => { deserialize: ...; serialize: ... };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: ...) => ...;
                            serialize: (pointers: ...) => ...;
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    active: {
                        deserialize(buffer: Buffer): boolean;
                        serialize(value: boolean): Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    log: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    referers: {
                        deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                        serialize: (
                            value: readonly `ak_${(...)}`[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    tag: {
                        constValue: Contract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Contract;
                        serialize: (value: Contract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            referers: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "deposit"
            | "version"
            | "ctVersion",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callerId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callerNonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    contractId: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gasUsed: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    height: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    log: {
                        deserialize: (value: Buffer[], params: unknown) => Buffer[];
                        serialize: (value: readonly Uint8Array[], params: unknown) => Buffer[];
                    };
                    returnType: {
                        deserialize: (value: Buffer) => CallReturnType;
                        serialize: (value: CallReturnType) => Buffer;
                    };
                    returnValue: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ContractCall;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractCall;
                        serialize: (value: ContractCall) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            returnType: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            returnValue: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    oracleTtlValue: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    queryFee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    queryFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    responseFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    tag: {
                        constValue: Oracle;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Oracle;
                        serialize: (value: Oracle) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "queryFee"
            | "abiVersion"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    channelAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    channelReserve: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiator: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    initiatorAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiatorAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    initiatorDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    lockedUntil: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    lockPeriod: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responder: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    responderAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responderAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    responderDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    round: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    soloRound: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    stateHash: {
                        deserialize: (value: Buffer) => `st_${string}`;
                        serialize: (value: `st_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: Channel;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Channel;
                        serialize: (value: Channel) => Buffer;
                    };
                    version: {
                        constValue: 3;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 3;
                        serialize: (value?: 3) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${(...)}`;
                            serialize: (value: `st_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateTransfer;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                        serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                    };
                    to: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            to: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateDeposit;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                        serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateWithdraw;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                        serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCreateContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                        serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version"
            | "ctVersion",
        > & { consensusProtocolVersion?: Ceres }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    caller: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callStack: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    contract: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasLimit: {
                        deserialize(value: Buffer): number;
                        serialize(
                            _value: undefined | number,
                            __namedParameters: {
                                _computingGasLimit?: number;
                                buildTx: (params: TxParams) => `tx_${(...)}`;
                                rebuildTx: (params: any) => any;
                                tag: Tag;
                                unpackTx: <TxType extends Tag>(
                                    encodedTx: (...) | (...) | (...) | (...),
                                    txType?: (...) | (...),
                                ) => TxUnpacked & { tag: TxType; };
                            },
                            __namedParameters: { gasMax?: number },
                        ): Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCallContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                        serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            caller: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: (...) | (...),
                                    __namedParameters: {
                                        _computingGasLimit?: ...;
                                        buildTx: ...;
                                        rebuildTx: ...;
                                        tag: ...;
                                        unpackTx: ...;
                                    },
                                    __namedParameters: { gasMax?: ... },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: (...) | (...);
                                    buildTx: (params: ...) => ...;
                                    rebuildTx: (params: ...) => ...;
                                    tag: Tag;
                                    unpackTx: <TxType extends ...>(encodedTx: ..., txType?: ...) => ...;
                                },
                                __namedParameters: { gasMax?: (...) | (...) },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "abiVersion"
            | "gasPrice"
            | "version"
            | "gasLimit",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & { gasMax?: number } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    calls: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    channels: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    contracts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    ns: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    oracles: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    tag: {
                        constValue: TreesPoi;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => TreesPoi;
                        serialize: (value: TreesPoi) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            calls: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            channels: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            contracts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            ns: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            oracles: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        calls: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        channels: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        contracts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        ns: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        oracles: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: MapAccounts;
                    calls: MapCalls;
                    channels: MapChannels;
                    contracts: MapContracts;
                    ns: MapNames;
                    oracles: MapOracles;
                    tag: {
                        constValue: StateTrees;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => StateTrees;
                        serialize: (value: StateTrees) => Buffer;
                    };
                    version: {
                        constValue: 0;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 0;
                        serialize: (value?: 0) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    tag: {
                        constValue: Mtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Mtree;
                        serialize: (value: Mtree) => Buffer;
                    };
                    values: EntryMtreeValueArray;
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    key: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: MtreeValue;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => MtreeValue;
                        serialize: (value: MtreeValue) => Buffer;
                    };
                    value: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapContracts;
                    tag: {
                        constValue: ContractsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractsMtree;
                        serialize: (value: ContractsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapCalls;
                    tag: {
                        constValue: CallsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => CallsMtree;
                        serialize: (value: CallsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapChannels;
                    tag: {
                        constValue: ChannelsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelsMtree;
                        serialize: (value: ChannelsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapNames;
                    tag: {
                        constValue: NameserviceMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => NameserviceMtree;
                        serialize: (value: NameserviceMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapOracles;
                    tag: {
                        constValue: OraclesMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => OraclesMtree;
                        serialize: (value: OraclesMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapAccounts;
                    tag: {
                        constValue: AccountsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => AccountsMtree;
                        serialize: (value: AccountsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    fee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: GaMetaTxAuthData;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => GaMetaTxAuthData;
                        serialize: (value: GaMetaTxAuthData) => Buffer;
                    };
                    txHash: {
                        deserialize: (value: Buffer) => `th_${string}`;
                        serialize: (value: `th_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            txHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${(...)}`;
                            serialize: (value: `th_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "fee"
            | "gasPrice"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined }
    ) & { tag: Name },
> = ...
oracles: Record<
    `ok_${string}`,
    (
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                never,
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value: 1) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            never,
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    balance: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    flags: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gaAuthFun: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    gaContract: {
                        deserialize: (value: Buffer) => `ct_${(...)}` | `nm_${(...)}`;
                        serialize: (value: `ct_${(...)}` | `nm_${(...)}`) => Buffer;
                    };
                    nonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    tag: {
                        constValue: Account;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Account;
                        serialize: (value: Account) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            balance: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            flags: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gaAuthFun: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gaContract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            nonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            tag: {
                                constValue: Account;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        balance: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        flags: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gaAuthFun: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        gaContract: {
                            deserialize: (value: Buffer) => (...) | (...);
                            serialize: (value: (...) | (...)) => Buffer;
                        };
                        nonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        tag: {
                            constValue: Account;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Account;
                            serialize: (value: Account) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    clientTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    nameTtl: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    pointers: <AllowRaw extends boolean>(
                        allowRaw: AllowRaw,
                    ) => {
                        deserialize: (pointers: (...)[]) => (...)[];
                        serialize: (pointers: (...)[]) => (...)[];
                    };
                    status: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: Name;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Name;
                        serialize: (value: Name) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            clientTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            nameTtl: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            pointers: <AllowRaw extends boolean>(
                                allowRaw: AllowRaw,
                            ) => { deserialize: ...; serialize: ... };
                            status: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: Name;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        clientTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        nameTtl: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        pointers: <AllowRaw extends boolean>(
                            allowRaw: AllowRaw,
                        ) => {
                            deserialize: (pointers: ...) => ...;
                            serialize: (pointers: ...) => ...;
                        };
                        status: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: Name;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Name;
                            serialize: (value: Name) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    active: {
                        deserialize(buffer: Buffer): boolean;
                        serialize(value: boolean): Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    log: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    referers: {
                        deserialize: (value: Buffer[], params: unknown) => `ak_${(...)}`[];
                        serialize: (
                            value: readonly `ak_${(...)}`[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    tag: {
                        constValue: Contract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Contract;
                        serialize: (value: Contract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            active: {
                                deserialize(buffer: Buffer): boolean;
                                serialize(value: boolean): Buffer;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            log: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            referers: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: Contract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "deposit"
                | "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        active: {
                            deserialize(buffer: Buffer): boolean;
                            serialize(value: boolean): Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        log: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        referers: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: Contract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Contract;
                            serialize: (value: Contract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "deposit"
            | "version"
            | "ctVersion",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callerId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callerNonce: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    contractId: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    gasUsed: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    height: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    log: {
                        deserialize: (value: Buffer[], params: unknown) => Buffer[];
                        serialize: (value: readonly Uint8Array[], params: unknown) => Buffer[];
                    };
                    returnType: {
                        deserialize: (value: Buffer) => CallReturnType;
                        serialize: (value: CallReturnType) => Buffer;
                    };
                    returnValue: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ContractCall;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractCall;
                        serialize: (value: ContractCall) => Buffer;
                    };
                    version: {
                        constValue: 2;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 2;
                        serialize: (value?: 2) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callerId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callerNonce: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            contractId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            gasUsed: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            height: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            log: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            returnType: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            returnValue: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ContractCall;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 2;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callerId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callerNonce: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        contractId: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        gasUsed: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        height: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        log: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        returnType: {
                            deserialize: (value: Buffer) => CallReturnType;
                            serialize: (value: CallReturnType) => Buffer;
                        };
                        returnValue: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ContractCall;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractCall;
                            serialize: (value: ContractCall) => Buffer;
                        };
                        version: {
                            constValue: 2;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 2;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    accountId: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    oracleTtlValue: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    queryFee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    queryFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    responseFormat: {
                        deserialize(buffer: Buffer): string;
                        serialize(string: string): Buffer;
                    };
                    tag: {
                        constValue: Oracle;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Oracle;
                        serialize: (value: Oracle) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            accountId: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            oracleTtlValue: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            queryFee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            queryFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            responseFormat: {
                                deserialize(buffer: Buffer): string;
                                serialize(string: string): Buffer;
                            };
                            tag: {
                                constValue: Oracle;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "queryFee"
                | "abiVersion"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        accountId: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        oracleTtlValue: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        queryFee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        queryFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        responseFormat: {
                            deserialize(buffer: Buffer): string;
                            serialize(string: string): Buffer;
                        };
                        tag: {
                            constValue: Oracle;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Oracle;
                            serialize: (value: Oracle) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "queryFee"
            | "abiVersion"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    channelAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    channelReserve: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiator: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    initiatorAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    initiatorAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    initiatorDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    lockedUntil: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    lockPeriod: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responder: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    responderAmount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    responderAuth: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    responderDelegateIds: {
                        deserialize: (
                            value: Buffer[],
                            params: unknown,
                        ) => ((...) | (...) | (...) | (...) | (...) | (...))[];
                        serialize: (
                            value: readonly ((...) | (...) | (...) | (...) | (...) | (...))[],
                            params: unknown,
                        ) => Buffer[];
                    };
                    round: {
                        deserialize(value: Buffer): number;
                        serialize(value: number): Buffer;
                    };
                    soloRound: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    stateHash: {
                        deserialize: (value: Buffer) => `st_${string}`;
                        serialize: (value: `st_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: Channel;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Channel;
                        serialize: (value: Channel) => Buffer;
                    };
                    version: {
                        constValue: 3;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 3;
                        serialize: (value?: 3) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            channelAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            channelReserve: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiator: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            initiatorAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            initiatorDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            lockedUntil: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            lockPeriod: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responder: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderAmount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            responderAuth: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            responderDelegateIds: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            round: {
                                deserialize(value: Buffer): number;
                                serialize(value: number): Buffer;
                            };
                            soloRound: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            stateHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: Channel;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 3;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        channelAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        channelReserve: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiator: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        initiatorAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        initiatorAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        initiatorDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        lockedUntil: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        lockPeriod: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responder: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        responderAmount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        responderAuth: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        responderDelegateIds: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        round: {
                            deserialize(value: Buffer): number;
                            serialize(value: number): Buffer;
                        };
                        soloRound: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        stateHash: {
                            deserialize: (value: Buffer) => `st_${(...)}`;
                            serialize: (value: `st_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: Channel;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Channel;
                            serialize: (value: Channel) => Buffer;
                        };
                        version: {
                            constValue: 3;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 3;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateTransfer;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                        serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                    };
                    to: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateTransfer;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            to: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateTransfer;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateTransfer;
                            serialize: (value: ChannelOffChainUpdateTransfer) => Buffer;
                        };
                        to: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateDeposit;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                        serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateDeposit;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateDeposit;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateDeposit;
                            serialize: (value: ChannelOffChainUpdateDeposit) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    from: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateWithdraw;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                        serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            from: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateWithdraw;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        from: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateWithdraw;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateWithdraw;
                            serialize: (value: ChannelOffChainUpdateWithdraw) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    code: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    ctVersion: {
                        deserialize(buffer: Buffer): CtVersion;
                        prepare(
                            value: undefined | CtVersion,
                            params: {},
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<undefined | CtVersion>;
                        serialize(
                            value: undefined | CtVersion,
                            params: {},
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    deposit: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    owner: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCreateContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                        serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            code: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            ctVersion: {
                                deserialize(buffer: Buffer): CtVersion;
                                prepare(
                                    value: (...) | (...),
                                    params: {},
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: (...) | (...),
                                    params: {},
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            deposit: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            owner: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCreateContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version"
                | "ctVersion",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        code: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        ctVersion: {
                            deserialize(buffer: Buffer): CtVersion;
                            prepare(
                                value: undefined | CtVersion,
                                params: {},
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(...) | (...)>;
                            serialize(
                                value: undefined | CtVersion,
                                params: {},
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        deposit: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        owner: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCreateContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCreateContract;
                            serialize: (value: ChannelOffChainUpdateCreateContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version"
            | "ctVersion",
        > & { consensusProtocolVersion?: Ceres }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    abiVersion: {
                        _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                        deserialize(buffer: Buffer): AbiVersion;
                        prepare(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            options: { consensusProtocolVersion?: Ceres; onNode?: Node },
                        ): Promise<(AbiVersion | undefined)>;
                        serialize(
                            value: AbiVersion | undefined,
                            __namedParameters: { tag: Tag },
                            __namedParameters: { consensusProtocolVersion?: Ceres },
                        ): Buffer;
                    };
                    amount: {
                        deserialize(value: Buffer): string;
                        serialize(value: Int): Buffer;
                    };
                    callData: {
                        deserialize: (value: Buffer) => `cb_${string}`;
                        serialize: (value: `cb_${string}`) => Buffer;
                    };
                    caller: {
                        deserialize: (value: Buffer) => `ak_${string}`;
                        serialize: (value: `ak_${string}`) => Buffer;
                    };
                    callStack: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    contract: {
                        deserialize: (value: Buffer) => `ct_${string}`;
                        serialize: (value: `ct_${string}`) => Buffer;
                    };
                    gasLimit: {
                        deserialize(value: Buffer): number;
                        serialize(
                            _value: undefined | number,
                            __namedParameters: {
                                _computingGasLimit?: number;
                                buildTx: (params: TxParams) => `tx_${(...)}`;
                                rebuildTx: (params: any) => any;
                                tag: Tag;
                                unpackTx: <TxType extends Tag>(
                                    encodedTx: (...) | (...) | (...) | (...),
                                    txType?: (...) | (...),
                                ) => TxUnpacked & { tag: TxType; };
                            },
                            __namedParameters: { gasMax?: number },
                        ): Buffer;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: ChannelOffChainUpdateCallContract;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                        serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            abiVersion: {
                                _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                                deserialize(buffer: Buffer): AbiVersion;
                                prepare(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    options: { consensusProtocolVersion?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: AbiVersion | undefined,
                                    __namedParameters: { tag: ... },
                                    __namedParameters: { consensusProtocolVersion?: ... },
                                ): Buffer;
                            };
                            amount: {
                                deserialize(value: Buffer): string;
                                serialize(value: Int): Buffer;
                            };
                            callData: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            caller: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            callStack: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            contract: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            gasLimit: {
                                deserialize(value: Buffer): number;
                                serialize(
                                    _value: (...) | (...),
                                    __namedParameters: {
                                        _computingGasLimit?: ...;
                                        buildTx: ...;
                                        rebuildTx: ...;
                                        tag: ...;
                                        unpackTx: ...;
                                    },
                                    __namedParameters: { gasMax?: ... },
                                ): Buffer;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: ChannelOffChainUpdateCallContract;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "abiVersion"
                | "gasPrice"
                | "version"
                | "gasLimit",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        abiVersion: {
                            _getProtocolDetails(c: Ceres, tag: Tag): AbiVersion;
                            deserialize(buffer: Buffer): AbiVersion;
                            prepare(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                options: {
                                    consensusProtocolVersion?: (...) | (...);
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(AbiVersion | undefined)>;
                            serialize(
                                value: AbiVersion | undefined,
                                __namedParameters: { tag: Tag },
                                __namedParameters: { consensusProtocolVersion?: (...) | (...) },
                            ): Buffer;
                        };
                        amount: {
                            deserialize(value: Buffer): string;
                            serialize(value: Int): Buffer;
                        };
                        callData: {
                            deserialize: (value: Buffer) => `cb_${(...)}`;
                            serialize: (value: `cb_${(...)}`) => Buffer;
                        };
                        caller: {
                            deserialize: (value: Buffer) => `ak_${(...)}`;
                            serialize: (value: `ak_${(...)}`) => Buffer;
                        };
                        callStack: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        contract: {
                            deserialize: (value: Buffer) => `ct_${(...)}`;
                            serialize: (value: `ct_${(...)}`) => Buffer;
                        };
                        gasLimit: {
                            deserialize(value: Buffer): number;
                            serialize(
                                _value: undefined | number,
                                __namedParameters: {
                                    _computingGasLimit?: (...) | (...);
                                    buildTx: (params: ...) => ...;
                                    rebuildTx: (params: ...) => ...;
                                    tag: Tag;
                                    unpackTx: <TxType extends ...>(encodedTx: ..., txType?: ...) => ...;
                                },
                                __namedParameters: { gasMax?: (...) | (...) },
                            ): Buffer;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: ChannelOffChainUpdateCallContract;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelOffChainUpdateCallContract;
                            serialize: (value: ChannelOffChainUpdateCallContract) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "abiVersion"
            | "gasPrice"
            | "version"
            | "gasLimit",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined } & { gasMax?: number } & {
            consensusProtocolVersion?: Ceres;
        }
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    calls: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    channels: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    contracts: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    ns: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    oracles: {
                        deserialize: (
                            value: MPTreeBinary[],
                            params: unknown,
                        ) => MPTree<(...), (...)>[];
                        serialize: (
                            value: readonly MPTree<(...), (...)>[],
                            params: unknown,
                        ) => MPTreeBinary[];
                    };
                    tag: {
                        constValue: TreesPoi;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => TreesPoi;
                        serialize: (value: TreesPoi) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            calls: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            channels: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            contracts: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            ns: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            oracles: {
                                deserialize: (value: ..., params: ...) => ...;
                                serialize: (value: ..., params: ...) => ...;
                            };
                            tag: {
                                constValue: TreesPoi;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        calls: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        channels: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        contracts: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        ns: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        oracles: {
                            deserialize: (value: (...)[], params: unknown) => (...)[];
                            serialize: (value: readonly (...)[], params: unknown) => (...)[];
                        };
                        tag: {
                            constValue: TreesPoi;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => TreesPoi;
                            serialize: (value: TreesPoi) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    accounts: MapAccounts;
                    calls: MapCalls;
                    channels: MapChannels;
                    contracts: MapContracts;
                    ns: MapNames;
                    oracles: MapOracles;
                    tag: {
                        constValue: StateTrees;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => StateTrees;
                        serialize: (value: StateTrees) => Buffer;
                    };
                    version: {
                        constValue: 0;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 0;
                        serialize: (value?: 0) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            accounts: MapAccounts;
                            calls: MapCalls;
                            channels: MapChannels;
                            contracts: MapContracts;
                            ns: MapNames;
                            oracles: MapOracles;
                            tag: {
                                constValue: StateTrees;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 0;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        accounts: MapAccounts;
                        calls: MapCalls;
                        channels: MapChannels;
                        contracts: MapContracts;
                        ns: MapNames;
                        oracles: MapOracles;
                        tag: {
                            constValue: StateTrees;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => StateTrees;
                            serialize: (value: StateTrees) => Buffer;
                        };
                        version: {
                            constValue: 0;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 0;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    tag: {
                        constValue: Mtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => Mtree;
                        serialize: (value: Mtree) => Buffer;
                    };
                    values: EntryMtreeValueArray;
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            tag: {
                                constValue: Mtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            values: EntryMtreeValueArray;
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        tag: {
                            constValue: Mtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => Mtree;
                            serialize: (value: Mtree) => Buffer;
                        };
                        values: EntryMtreeValueArray;
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    key: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    tag: {
                        constValue: MtreeValue;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => MtreeValue;
                        serialize: (value: MtreeValue) => Buffer;
                    };
                    value: {
                        deserialize(buffer: Buffer): Buffer;
                        serialize(buffer: Uint8Array): Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            key: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            tag: {
                                constValue: MtreeValue;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            value: {
                                deserialize(buffer: Buffer): Buffer;
                                serialize(buffer: Uint8Array): Buffer;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        key: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        tag: {
                            constValue: MtreeValue;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => MtreeValue;
                            serialize: (value: MtreeValue) => Buffer;
                        };
                        value: {
                            deserialize(buffer: Buffer): Buffer;
                            serialize(buffer: Uint8Array): Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapContracts;
                    tag: {
                        constValue: ContractsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ContractsMtree;
                        serialize: (value: ContractsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapContracts;
                            tag: {
                                constValue: ContractsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapContracts;
                        tag: {
                            constValue: ContractsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ContractsMtree;
                            serialize: (value: ContractsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapCalls;
                    tag: {
                        constValue: CallsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => CallsMtree;
                        serialize: (value: CallsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapCalls;
                            tag: {
                                constValue: CallsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapCalls;
                        tag: {
                            constValue: CallsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => CallsMtree;
                            serialize: (value: CallsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapChannels;
                    tag: {
                        constValue: ChannelsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => ChannelsMtree;
                        serialize: (value: ChannelsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapChannels;
                            tag: {
                                constValue: ChannelsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapChannels;
                        tag: {
                            constValue: ChannelsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => ChannelsMtree;
                            serialize: (value: ChannelsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapNames;
                    tag: {
                        constValue: NameserviceMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => NameserviceMtree;
                        serialize: (value: NameserviceMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapNames;
                            tag: {
                                constValue: NameserviceMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapNames;
                        tag: {
                            constValue: NameserviceMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => NameserviceMtree;
                            serialize: (value: NameserviceMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapOracles;
                    tag: {
                        constValue: OraclesMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => OraclesMtree;
                        serialize: (value: OraclesMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapOracles;
                            tag: {
                                constValue: OraclesMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapOracles;
                        tag: {
                            constValue: OraclesMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => OraclesMtree;
                            serialize: (value: OraclesMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    payload: MapAccounts;
                    tag: {
                        constValue: AccountsMtree;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => AccountsMtree;
                        serialize: (value: AccountsMtree) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            payload: MapAccounts;
                            tag: {
                                constValue: AccountsMtree;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        payload: MapAccounts;
                        tag: {
                            constValue: AccountsMtree;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => AccountsMtree;
                            serialize: (value: AccountsMtree) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "version",
        >
        | TxParamsBySchemaInternal<
            PickIsRec<
                {
                    fee: {
                        deserialize(value: Buffer): string;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(
                            value: undefined | string,
                            params: {},
                            options: {},
                        ): string;
                    };
                    gasPrice: {
                        deserialize(value: Buffer): string;
                        prepare(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: {
                                denomination?: AE_AMOUNT_FORMATS | undefined;
                                onNode?: Node;
                            },
                        ): Promise<(Int | undefined)>;
                        serialize(
                            value: Int | undefined,
                            params: {},
                            __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                        ): Buffer;
                        serializeAettos(value?: undefined | string): string;
                    };
                    tag: {
                        constValue: GaMetaTxAuthData;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => GaMetaTxAuthData;
                        serialize: (value: GaMetaTxAuthData) => Buffer;
                    };
                    txHash: {
                        deserialize: (value: Buffer) => `th_${string}`;
                        serialize: (value: `th_${string}`) => Buffer;
                    };
                    version: {
                        constValue: 1;
                        constValueOptional: boolean;
                        deserialize: (value: Buffer) => 1;
                        serialize: (value?: 1) => Buffer;
                    };
                },
                true,
            >,
        > & Partial<
            Pick<
                TxParamsBySchemaInternal<
                    PickIsRec<
                        {
                            fee: {
                                deserialize(value: Buffer): string;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(
                                    value: (...) | (...),
                                    params: {},
                                    options: {},
                                ): string;
                            };
                            gasPrice: {
                                deserialize(value: Buffer): string;
                                prepare(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ...; onNode?: ... },
                                ): Promise<(...)>;
                                serialize(
                                    value: Int | undefined,
                                    params: {},
                                    __namedParameters: { denomination?: ... },
                                ): Buffer;
                                serializeAettos(value?: (...) | (...)): string;
                            };
                            tag: {
                                constValue: GaMetaTxAuthData;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            txHash: {
                                deserialize: (value: ...) => ...;
                                serialize: (value: ...) => ...;
                            };
                            version: {
                                constValue: 1;
                                constValueOptional: boolean;
                                deserialize: (value: ...) => ...;
                                serialize: (value?: ...) => ...;
                            };
                        },
                        false,
                    >,
                >,
                "fee"
                | "gasPrice"
                | "version",
            >,
        > & Omit<
            TxParamsBySchemaInternal<
                PickIsRec<
                    {
                        fee: {
                            deserialize(value: Buffer): string;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(
                                value: undefined | string,
                                params: {},
                                options: {},
                            ): string;
                        };
                        gasPrice: {
                            deserialize(value: Buffer): string;
                            prepare(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: {
                                    denomination?: AE_AMOUNT_FORMATS | undefined;
                                    onNode?: (...) | (...);
                                },
                            ): Promise<(Int | undefined)>;
                            serialize(
                                value: Int | undefined,
                                params: {},
                                __namedParameters: { denomination?: AE_AMOUNT_FORMATS | undefined },
                            ): Buffer;
                            serializeAettos(value?: undefined | string): string;
                        };
                        tag: {
                            constValue: GaMetaTxAuthData;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => GaMetaTxAuthData;
                            serialize: (value: GaMetaTxAuthData) => Buffer;
                        };
                        txHash: {
                            deserialize: (value: Buffer) => `th_${(...)}`;
                            serialize: (value: `th_${(...)}`) => Buffer;
                        };
                        version: {
                            constValue: 1;
                            constValueOptional: boolean;
                            deserialize: (value: Buffer) => 1;
                            serialize: (value?: (...) | (...)) => Buffer;
                        };
                    },
                    false,
                >,
            >,
            "fee"
            | "gasPrice"
            | "version",
        > & { denomination?: AE_AMOUNT_FORMATS | undefined }
    ) & { tag: Oracle },
> = ...
tag: StateTrees = ...
version?: 0