ContractGrant: {
    typeUrl: string;
    decode(input: Uint8Array | BinaryReader, length?: number): ContractGrant;
    encode(message: ContractGrant, writer?: BinaryWriter): BinaryWriter;
    fromAmino(object: ContractGrantAmino): ContractGrant;
    fromAminoMsg(object: ContractGrantAminoMsg): ContractGrant;
    fromPartial(object: {
        contract?: string;
        filter?:
            | {
                $typeUrl?: string;
                typeUrl?: string;
                value?: Uint8Array;
            }
            | {
                $typeUrl?: "/cosmwasm.wasm.v1.AllowAllMessagesFilter";
            }
            | {
                $typeUrl?: "/cosmwasm.wasm.v1.AcceptedMessageKeysFilter";
                keys?: string[];
            }
            | {
                $typeUrl?: "/cosmwasm.wasm.v1.AcceptedMessagesFilter";
                messages?: Uint8Array[];
            };
        limit?:
            | {
                $typeUrl?: string;
                typeUrl?: string;
                value?: Uint8Array;
            }
            | {
                $typeUrl?: "/cosmwasm.wasm.v1.MaxCallsLimit";
                remaining?: bigint;
            }
            | {
                $typeUrl?: "/cosmwasm.wasm.v1.MaxFundsLimit";
                amounts?: {
                    amount?: string;
                    denom?: string;
                }[];
            }
            | {
                $typeUrl?: "/cosmwasm.wasm.v1.CombinedLimit";
                amounts?: {
                    amount?: string;
                    denom?: string;
                }[];
                callsRemaining?: bigint;
            };
    }): ContractGrant;
    fromProtoMsg(message: ContractGrantProtoMsg): ContractGrant;
    toAmino(message: ContractGrant): ContractGrantAmino;
    toAminoMsg(message: ContractGrant): ContractGrantAminoMsg;
    toProto(message: ContractGrant): Uint8Array;
    toProtoMsg(message: ContractGrant): ContractGrantProtoMsg;
}