import { buildTx } from "../../../../helper-func-types";
import { toEncoders, toConverters } from "@interchainjs/cosmos/utils";
import { MsgCreateClient, MsgUpdateClient, MsgUpgradeClient, MsgSubmitMisbehaviour, MsgRecoverClient, MsgIBCSoftwareUpgrade, MsgUpdateParams } from "./tx";
export const createCreateClient = (clientResolver) => buildTx({
    clientResolver,
    typeUrl: MsgCreateClient.typeUrl,
    encoders: toEncoders(MsgCreateClient),
    converters: toConverters(MsgCreateClient)
});
export const createUpdateClient = (clientResolver) => buildTx({
    clientResolver,
    typeUrl: MsgUpdateClient.typeUrl,
    encoders: toEncoders(MsgUpdateClient),
    converters: toConverters(MsgUpdateClient)
});
export const createUpgradeClient = (clientResolver) => buildTx({
    clientResolver,
    typeUrl: MsgUpgradeClient.typeUrl,
    encoders: toEncoders(MsgUpgradeClient),
    converters: toConverters(MsgUpgradeClient)
});
export const createSubmitMisbehaviour = (clientResolver) => buildTx({
    clientResolver,
    typeUrl: MsgSubmitMisbehaviour.typeUrl,
    encoders: toEncoders(MsgSubmitMisbehaviour),
    converters: toConverters(MsgSubmitMisbehaviour)
});
export const createRecoverClient = (clientResolver) => buildTx({
    clientResolver,
    typeUrl: MsgRecoverClient.typeUrl,
    encoders: toEncoders(MsgRecoverClient),
    converters: toConverters(MsgRecoverClient)
});
export const createIBCSoftwareUpgrade = (clientResolver) => buildTx({
    clientResolver,
    typeUrl: MsgIBCSoftwareUpgrade.typeUrl,
    encoders: toEncoders(MsgIBCSoftwareUpgrade),
    converters: toConverters(MsgIBCSoftwareUpgrade)
});
export const createUpdateClientParams = (clientResolver) => buildTx({
    clientResolver,
    typeUrl: MsgUpdateParams.typeUrl,
    encoders: toEncoders(MsgUpdateParams),
    converters: toConverters(MsgUpdateParams)
});
