// @generated by protobuf-ts 2.11.1 with parameter add_pb_suffix
// @generated from protobuf file "injective/insurance/v1beta1/query.proto" (package "injective.insurance.v1beta1", syntax proto3)
// tslint:disable
import { ServiceType } from "@protobuf-ts/runtime-rpc";
import { WireType } from "@protobuf-ts/runtime";
import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
import type { IBinaryWriter } from "@protobuf-ts/runtime";
import type { BinaryReadOptions } from "@protobuf-ts/runtime";
import type { IBinaryReader } from "@protobuf-ts/runtime";
import { UnknownFieldHandler } from "@protobuf-ts/runtime";
import type { PartialMessage } from "@protobuf-ts/runtime";
import { reflectionMergePartial } from "@protobuf-ts/runtime";
import { MessageType } from "@protobuf-ts/runtime";
import { AddressVoucher } from "../../common/vouchers/v1/vouchers_pb";
import { FailedRedemptionSchedule } from "./insurance_pb";
import { GenesisState } from "./genesis_pb";
import { Coin } from "../../../cosmos/base/v1beta1/coin_pb";
import { InsuranceFund } from "./insurance_pb";
import { Params } from "./insurance_pb";
/**
 * QueryInsuranceParamsRequest is the request type for the Query/InsuranceParams
 * RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryInsuranceParamsRequest
 */
export interface QueryInsuranceParamsRequest {
}
/**
 * QueryInsuranceParamsRequest is the response type for the
 * Query/InsuranceParams RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryInsuranceParamsResponse
 */
export interface QueryInsuranceParamsResponse {
    /**
     * @generated from protobuf field: injective.insurance.v1beta1.Params params = 1
     */
    params?: Params;
}
/**
 * QueryInsuranceFundRequest is the request type for the Query/InsuranceFunds
 * RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryInsuranceFundRequest
 */
export interface QueryInsuranceFundRequest {
    /**
     * Market ID for the market
     *
     * @generated from protobuf field: string market_id = 1
     */
    marketId: string;
}
/**
 * QueryInsuranceFundResponse is the response type for the Query/InsuranceFund
 * RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryInsuranceFundResponse
 */
export interface QueryInsuranceFundResponse {
    /**
     * @generated from protobuf field: injective.insurance.v1beta1.InsuranceFund fund = 1
     */
    fund?: InsuranceFund;
}
/**
 * QueryInsuranceFundsRequest is the request type for the Query/InsuranceFunds
 * RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryInsuranceFundsRequest
 */
export interface QueryInsuranceFundsRequest {
}
/**
 * QueryInsuranceFundsResponse is the response type for the Query/InsuranceFunds
 * RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryInsuranceFundsResponse
 */
export interface QueryInsuranceFundsResponse {
    /**
     * @generated from protobuf field: repeated injective.insurance.v1beta1.InsuranceFund funds = 1
     */
    funds: InsuranceFund[];
}
/**
 * QueryEstimatedRedemptionsRequest is the request type for the
 * Query/EstimatedRedemptions RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryEstimatedRedemptionsRequest
 */
export interface QueryEstimatedRedemptionsRequest {
    /**
     * @generated from protobuf field: string marketId = 1
     */
    marketId: string;
    /**
     * @generated from protobuf field: string address = 2
     */
    address: string;
}
/**
 * QueryEstimatedRedemptionsResponse is the response type for the
 * Query/EstimatedRedemptions RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryEstimatedRedemptionsResponse
 */
export interface QueryEstimatedRedemptionsResponse {
    /**
     * @generated from protobuf field: repeated cosmos.base.v1beta1.Coin amount = 1
     */
    amount: Coin[];
}
/**
 * QueryPendingRedemptionsRequest is the request type for the
 * Query/PendingRedemptions RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryPendingRedemptionsRequest
 */
export interface QueryPendingRedemptionsRequest {
    /**
     * @generated from protobuf field: string marketId = 1
     */
    marketId: string;
    /**
     * @generated from protobuf field: string address = 2
     */
    address: string;
}
/**
 * QueryPendingRedemptionsResponse is the response type for the
 * Query/PendingRedemptions RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryPendingRedemptionsResponse
 */
export interface QueryPendingRedemptionsResponse {
    /**
     * @generated from protobuf field: repeated cosmos.base.v1beta1.Coin amount = 1
     */
    amount: Coin[];
}
/**
 * QueryModuleStateRequest is the request type for the
 * Query/InsuranceModuleState RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryModuleStateRequest
 */
export interface QueryModuleStateRequest {
}
/**
 * QueryModuleStateResponse is the response type for the
 * Query/InsuranceModuleState RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryModuleStateResponse
 */
export interface QueryModuleStateResponse {
    /**
     * @generated from protobuf field: injective.insurance.v1beta1.GenesisState state = 1
     */
    state?: GenesisState;
}
/**
 * QueryFailedRedemptionsRequest is the request type for the
 * Query/FailedRedemptions RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryFailedRedemptionsRequest
 */
export interface QueryFailedRedemptionsRequest {
}
/**
 * QueryFailedRedemptionsResponse is the response type for the
 * Query/FailedRedemptions RPC method.
 *
 * @generated from protobuf message injective.insurance.v1beta1.QueryFailedRedemptionsResponse
 */
export interface QueryFailedRedemptionsResponse {
    /**
     * @generated from protobuf field: repeated injective.insurance.v1beta1.FailedRedemptionSchedule schedules = 1
     */
    schedules: FailedRedemptionSchedule[];
}
/**
 * @generated from protobuf message injective.insurance.v1beta1.QueryVouchersRequest
 */
export interface QueryVouchersRequest {
    /**
     * denom filter; empty string returns all vouchers
     *
     * @generated from protobuf field: string denom = 1
     */
    denom: string;
}
/**
 * @generated from protobuf message injective.insurance.v1beta1.QueryVouchersResponse
 */
export interface QueryVouchersResponse {
    /**
     * List of outstanding vouchers matching the request filter.
     *
     * @generated from protobuf field: repeated injective.common.vouchers.v1.AddressVoucher vouchers = 1
     */
    vouchers: AddressVoucher[];
}
/**
 * @generated from protobuf message injective.insurance.v1beta1.QueryVoucherRequest
 */
export interface QueryVoucherRequest {
    /**
     * Required. The token denom to look up.
     *
     * @generated from protobuf field: string denom = 1
     */
    denom: string;
    /**
     * Required. The bech32 address of the voucher holder.
     *
     * @generated from protobuf field: string address = 2
     */
    address: string;
}
/**
 * @generated from protobuf message injective.insurance.v1beta1.QueryVoucherResponse
 */
export interface QueryVoucherResponse {
    /**
     * The outstanding voucher coin for the requested denom and address.
     *
     * @generated from protobuf field: cosmos.base.v1beta1.Coin voucher = 1
     */
    voucher?: Coin;
}
// @generated message type with reflection information, may provide speed optimized methods
class QueryInsuranceParamsRequest$Type extends MessageType<QueryInsuranceParamsRequest> {
    constructor() {
        super("injective.insurance.v1beta1.QueryInsuranceParamsRequest", []);
    }
    create(value?: PartialMessage<QueryInsuranceParamsRequest>): QueryInsuranceParamsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<QueryInsuranceParamsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryInsuranceParamsRequest): QueryInsuranceParamsRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryInsuranceParamsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryInsuranceParamsRequest
 */
export const QueryInsuranceParamsRequest = new QueryInsuranceParamsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryInsuranceParamsResponse$Type extends MessageType<QueryInsuranceParamsResponse> {
    constructor() {
        super("injective.insurance.v1beta1.QueryInsuranceParamsResponse", [
            { no: 1, name: "params", kind: "message", T: () => Params, options: { "gogoproto.nullable": false } }
        ]);
    }
    create(value?: PartialMessage<QueryInsuranceParamsResponse>): QueryInsuranceParamsResponse {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<QueryInsuranceParamsResponse>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryInsuranceParamsResponse): QueryInsuranceParamsResponse {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* injective.insurance.v1beta1.Params params */ 1:
                    message.params = Params.internalBinaryRead(reader, reader.uint32(), options, message.params);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryInsuranceParamsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* injective.insurance.v1beta1.Params params = 1; */
        if (message.params)
            Params.internalBinaryWrite(message.params, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryInsuranceParamsResponse
 */
export const QueryInsuranceParamsResponse = new QueryInsuranceParamsResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryInsuranceFundRequest$Type extends MessageType<QueryInsuranceFundRequest> {
    constructor() {
        super("injective.insurance.v1beta1.QueryInsuranceFundRequest", [
            { no: 1, name: "market_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<QueryInsuranceFundRequest>): QueryInsuranceFundRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.marketId = "";
        if (value !== undefined)
            reflectionMergePartial<QueryInsuranceFundRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryInsuranceFundRequest): QueryInsuranceFundRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string market_id */ 1:
                    message.marketId = reader.string();
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryInsuranceFundRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string market_id = 1; */
        if (message.marketId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.marketId);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryInsuranceFundRequest
 */
export const QueryInsuranceFundRequest = new QueryInsuranceFundRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryInsuranceFundResponse$Type extends MessageType<QueryInsuranceFundResponse> {
    constructor() {
        super("injective.insurance.v1beta1.QueryInsuranceFundResponse", [
            { no: 1, name: "fund", kind: "message", T: () => InsuranceFund }
        ]);
    }
    create(value?: PartialMessage<QueryInsuranceFundResponse>): QueryInsuranceFundResponse {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<QueryInsuranceFundResponse>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryInsuranceFundResponse): QueryInsuranceFundResponse {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* injective.insurance.v1beta1.InsuranceFund fund */ 1:
                    message.fund = InsuranceFund.internalBinaryRead(reader, reader.uint32(), options, message.fund);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryInsuranceFundResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* injective.insurance.v1beta1.InsuranceFund fund = 1; */
        if (message.fund)
            InsuranceFund.internalBinaryWrite(message.fund, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryInsuranceFundResponse
 */
export const QueryInsuranceFundResponse = new QueryInsuranceFundResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryInsuranceFundsRequest$Type extends MessageType<QueryInsuranceFundsRequest> {
    constructor() {
        super("injective.insurance.v1beta1.QueryInsuranceFundsRequest", []);
    }
    create(value?: PartialMessage<QueryInsuranceFundsRequest>): QueryInsuranceFundsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<QueryInsuranceFundsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryInsuranceFundsRequest): QueryInsuranceFundsRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryInsuranceFundsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryInsuranceFundsRequest
 */
export const QueryInsuranceFundsRequest = new QueryInsuranceFundsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryInsuranceFundsResponse$Type extends MessageType<QueryInsuranceFundsResponse> {
    constructor() {
        super("injective.insurance.v1beta1.QueryInsuranceFundsResponse", [
            { no: 1, name: "funds", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => InsuranceFund, options: { "gogoproto.nullable": false } }
        ]);
    }
    create(value?: PartialMessage<QueryInsuranceFundsResponse>): QueryInsuranceFundsResponse {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.funds = [];
        if (value !== undefined)
            reflectionMergePartial<QueryInsuranceFundsResponse>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryInsuranceFundsResponse): QueryInsuranceFundsResponse {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* repeated injective.insurance.v1beta1.InsuranceFund funds */ 1:
                    message.funds.push(InsuranceFund.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryInsuranceFundsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* repeated injective.insurance.v1beta1.InsuranceFund funds = 1; */
        for (let i = 0; i < message.funds.length; i++)
            InsuranceFund.internalBinaryWrite(message.funds[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryInsuranceFundsResponse
 */
export const QueryInsuranceFundsResponse = new QueryInsuranceFundsResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryEstimatedRedemptionsRequest$Type extends MessageType<QueryEstimatedRedemptionsRequest> {
    constructor() {
        super("injective.insurance.v1beta1.QueryEstimatedRedemptionsRequest", [
            { no: 1, name: "marketId", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
            { no: 2, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<QueryEstimatedRedemptionsRequest>): QueryEstimatedRedemptionsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.marketId = "";
        message.address = "";
        if (value !== undefined)
            reflectionMergePartial<QueryEstimatedRedemptionsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryEstimatedRedemptionsRequest): QueryEstimatedRedemptionsRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string marketId */ 1:
                    message.marketId = reader.string();
                    break;
                case /* string address */ 2:
                    message.address = reader.string();
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryEstimatedRedemptionsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string marketId = 1; */
        if (message.marketId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.marketId);
        /* string address = 2; */
        if (message.address !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.address);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryEstimatedRedemptionsRequest
 */
export const QueryEstimatedRedemptionsRequest = new QueryEstimatedRedemptionsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryEstimatedRedemptionsResponse$Type extends MessageType<QueryEstimatedRedemptionsResponse> {
    constructor() {
        super("injective.insurance.v1beta1.QueryEstimatedRedemptionsResponse", [
            { no: 1, name: "amount", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Coin, options: { "gogoproto.nullable": false } }
        ]);
    }
    create(value?: PartialMessage<QueryEstimatedRedemptionsResponse>): QueryEstimatedRedemptionsResponse {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.amount = [];
        if (value !== undefined)
            reflectionMergePartial<QueryEstimatedRedemptionsResponse>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryEstimatedRedemptionsResponse): QueryEstimatedRedemptionsResponse {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* repeated cosmos.base.v1beta1.Coin amount */ 1:
                    message.amount.push(Coin.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryEstimatedRedemptionsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* repeated cosmos.base.v1beta1.Coin amount = 1; */
        for (let i = 0; i < message.amount.length; i++)
            Coin.internalBinaryWrite(message.amount[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryEstimatedRedemptionsResponse
 */
export const QueryEstimatedRedemptionsResponse = new QueryEstimatedRedemptionsResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryPendingRedemptionsRequest$Type extends MessageType<QueryPendingRedemptionsRequest> {
    constructor() {
        super("injective.insurance.v1beta1.QueryPendingRedemptionsRequest", [
            { no: 1, name: "marketId", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
            { no: 2, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<QueryPendingRedemptionsRequest>): QueryPendingRedemptionsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.marketId = "";
        message.address = "";
        if (value !== undefined)
            reflectionMergePartial<QueryPendingRedemptionsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryPendingRedemptionsRequest): QueryPendingRedemptionsRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string marketId */ 1:
                    message.marketId = reader.string();
                    break;
                case /* string address */ 2:
                    message.address = reader.string();
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryPendingRedemptionsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string marketId = 1; */
        if (message.marketId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.marketId);
        /* string address = 2; */
        if (message.address !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.address);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryPendingRedemptionsRequest
 */
export const QueryPendingRedemptionsRequest = new QueryPendingRedemptionsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryPendingRedemptionsResponse$Type extends MessageType<QueryPendingRedemptionsResponse> {
    constructor() {
        super("injective.insurance.v1beta1.QueryPendingRedemptionsResponse", [
            { no: 1, name: "amount", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Coin, options: { "gogoproto.nullable": false } }
        ]);
    }
    create(value?: PartialMessage<QueryPendingRedemptionsResponse>): QueryPendingRedemptionsResponse {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.amount = [];
        if (value !== undefined)
            reflectionMergePartial<QueryPendingRedemptionsResponse>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryPendingRedemptionsResponse): QueryPendingRedemptionsResponse {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* repeated cosmos.base.v1beta1.Coin amount */ 1:
                    message.amount.push(Coin.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryPendingRedemptionsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* repeated cosmos.base.v1beta1.Coin amount = 1; */
        for (let i = 0; i < message.amount.length; i++)
            Coin.internalBinaryWrite(message.amount[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryPendingRedemptionsResponse
 */
export const QueryPendingRedemptionsResponse = new QueryPendingRedemptionsResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryModuleStateRequest$Type extends MessageType<QueryModuleStateRequest> {
    constructor() {
        super("injective.insurance.v1beta1.QueryModuleStateRequest", []);
    }
    create(value?: PartialMessage<QueryModuleStateRequest>): QueryModuleStateRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<QueryModuleStateRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryModuleStateRequest): QueryModuleStateRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryModuleStateRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryModuleStateRequest
 */
export const QueryModuleStateRequest = new QueryModuleStateRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryModuleStateResponse$Type extends MessageType<QueryModuleStateResponse> {
    constructor() {
        super("injective.insurance.v1beta1.QueryModuleStateResponse", [
            { no: 1, name: "state", kind: "message", T: () => GenesisState }
        ]);
    }
    create(value?: PartialMessage<QueryModuleStateResponse>): QueryModuleStateResponse {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<QueryModuleStateResponse>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryModuleStateResponse): QueryModuleStateResponse {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* injective.insurance.v1beta1.GenesisState state */ 1:
                    message.state = GenesisState.internalBinaryRead(reader, reader.uint32(), options, message.state);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryModuleStateResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* injective.insurance.v1beta1.GenesisState state = 1; */
        if (message.state)
            GenesisState.internalBinaryWrite(message.state, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryModuleStateResponse
 */
export const QueryModuleStateResponse = new QueryModuleStateResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryFailedRedemptionsRequest$Type extends MessageType<QueryFailedRedemptionsRequest> {
    constructor() {
        super("injective.insurance.v1beta1.QueryFailedRedemptionsRequest", []);
    }
    create(value?: PartialMessage<QueryFailedRedemptionsRequest>): QueryFailedRedemptionsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<QueryFailedRedemptionsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryFailedRedemptionsRequest): QueryFailedRedemptionsRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryFailedRedemptionsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryFailedRedemptionsRequest
 */
export const QueryFailedRedemptionsRequest = new QueryFailedRedemptionsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryFailedRedemptionsResponse$Type extends MessageType<QueryFailedRedemptionsResponse> {
    constructor() {
        super("injective.insurance.v1beta1.QueryFailedRedemptionsResponse", [
            { no: 1, name: "schedules", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => FailedRedemptionSchedule, options: { "gogoproto.nullable": false } }
        ]);
    }
    create(value?: PartialMessage<QueryFailedRedemptionsResponse>): QueryFailedRedemptionsResponse {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.schedules = [];
        if (value !== undefined)
            reflectionMergePartial<QueryFailedRedemptionsResponse>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryFailedRedemptionsResponse): QueryFailedRedemptionsResponse {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* repeated injective.insurance.v1beta1.FailedRedemptionSchedule schedules */ 1:
                    message.schedules.push(FailedRedemptionSchedule.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryFailedRedemptionsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* repeated injective.insurance.v1beta1.FailedRedemptionSchedule schedules = 1; */
        for (let i = 0; i < message.schedules.length; i++)
            FailedRedemptionSchedule.internalBinaryWrite(message.schedules[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryFailedRedemptionsResponse
 */
export const QueryFailedRedemptionsResponse = new QueryFailedRedemptionsResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryVouchersRequest$Type extends MessageType<QueryVouchersRequest> {
    constructor() {
        super("injective.insurance.v1beta1.QueryVouchersRequest", [
            { no: 1, name: "denom", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<QueryVouchersRequest>): QueryVouchersRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.denom = "";
        if (value !== undefined)
            reflectionMergePartial<QueryVouchersRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryVouchersRequest): QueryVouchersRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string denom */ 1:
                    message.denom = reader.string();
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryVouchersRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string denom = 1; */
        if (message.denom !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.denom);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryVouchersRequest
 */
export const QueryVouchersRequest = new QueryVouchersRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryVouchersResponse$Type extends MessageType<QueryVouchersResponse> {
    constructor() {
        super("injective.insurance.v1beta1.QueryVouchersResponse", [
            { no: 1, name: "vouchers", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => AddressVoucher, options: { "gogoproto.nullable": false } }
        ]);
    }
    create(value?: PartialMessage<QueryVouchersResponse>): QueryVouchersResponse {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.vouchers = [];
        if (value !== undefined)
            reflectionMergePartial<QueryVouchersResponse>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryVouchersResponse): QueryVouchersResponse {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* repeated injective.common.vouchers.v1.AddressVoucher vouchers */ 1:
                    message.vouchers.push(AddressVoucher.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryVouchersResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* repeated injective.common.vouchers.v1.AddressVoucher vouchers = 1; */
        for (let i = 0; i < message.vouchers.length; i++)
            AddressVoucher.internalBinaryWrite(message.vouchers[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryVouchersResponse
 */
export const QueryVouchersResponse = new QueryVouchersResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryVoucherRequest$Type extends MessageType<QueryVoucherRequest> {
    constructor() {
        super("injective.insurance.v1beta1.QueryVoucherRequest", [
            { no: 1, name: "denom", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
            { no: 2, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<QueryVoucherRequest>): QueryVoucherRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.denom = "";
        message.address = "";
        if (value !== undefined)
            reflectionMergePartial<QueryVoucherRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryVoucherRequest): QueryVoucherRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string denom */ 1:
                    message.denom = reader.string();
                    break;
                case /* string address */ 2:
                    message.address = reader.string();
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryVoucherRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string denom = 1; */
        if (message.denom !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.denom);
        /* string address = 2; */
        if (message.address !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.address);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryVoucherRequest
 */
export const QueryVoucherRequest = new QueryVoucherRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class QueryVoucherResponse$Type extends MessageType<QueryVoucherResponse> {
    constructor() {
        super("injective.insurance.v1beta1.QueryVoucherResponse", [
            { no: 1, name: "voucher", kind: "message", T: () => Coin, options: { "gogoproto.nullable": false, "gogoproto.customtype": "github.com/cosmos/cosmos-sdk/types.Coin" } }
        ]);
    }
    create(value?: PartialMessage<QueryVoucherResponse>): QueryVoucherResponse {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<QueryVoucherResponse>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryVoucherResponse): QueryVoucherResponse {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* cosmos.base.v1beta1.Coin voucher */ 1:
                    message.voucher = Coin.internalBinaryRead(reader, reader.uint32(), options, message.voucher);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: QueryVoucherResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* cosmos.base.v1beta1.Coin voucher = 1; */
        if (message.voucher)
            Coin.internalBinaryWrite(message.voucher, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message injective.insurance.v1beta1.QueryVoucherResponse
 */
export const QueryVoucherResponse = new QueryVoucherResponse$Type();
/**
 * @generated ServiceType for protobuf service injective.insurance.v1beta1.Query
 */
export const Query = new ServiceType("injective.insurance.v1beta1.Query", [
    { name: "InsuranceParams", options: { "google.api.http": { get: "/injective/insurance/v1beta1/params" } }, I: QueryInsuranceParamsRequest, O: QueryInsuranceParamsResponse },
    { name: "InsuranceFund", options: { "google.api.http": { get: "/injective/insurance/v1beta1/insurance_fund/{market_id}" } }, I: QueryInsuranceFundRequest, O: QueryInsuranceFundResponse },
    { name: "InsuranceFunds", options: { "google.api.http": { get: "/injective/insurance/v1beta1/insurance_funds" } }, I: QueryInsuranceFundsRequest, O: QueryInsuranceFundsResponse },
    { name: "EstimatedRedemptions", options: { "google.api.http": { get: "/injective/insurance/v1beta1/estimated_redemptions" } }, I: QueryEstimatedRedemptionsRequest, O: QueryEstimatedRedemptionsResponse },
    { name: "PendingRedemptions", options: { "google.api.http": { get: "/injective/insurance/v1beta1/pending_redemptions" } }, I: QueryPendingRedemptionsRequest, O: QueryPendingRedemptionsResponse },
    { name: "InsuranceModuleState", options: { "google.api.http": { get: "/injective/insurance/v1beta1/module_state" } }, I: QueryModuleStateRequest, O: QueryModuleStateResponse },
    { name: "FailedRedemptions", options: { "google.api.http": { get: "/injective/insurance/v1beta1/failed_redemptions" } }, I: QueryFailedRedemptionsRequest, O: QueryFailedRedemptionsResponse },
    { name: "Vouchers", options: { "google.api.http": { get: "/injective/insurance/v1beta1/vouchers" } }, I: QueryVouchersRequest, O: QueryVouchersResponse },
    { name: "Voucher", options: { "google.api.http": { get: "/injective/insurance/v1beta1/voucher" } }, I: QueryVoucherRequest, O: QueryVoucherResponse }
]);
