import { buildQuery } from "../../../helper-func-types";
import { QueryValidatorsRequest, QueryValidatorsResponse, QueryValidatorRequest, QueryValidatorResponse, QueryValidatorDelegationsRequest, QueryValidatorDelegationsResponse, QueryValidatorUnbondingDelegationsRequest, QueryValidatorUnbondingDelegationsResponse, QueryDelegationRequest, QueryDelegationResponse, QueryUnbondingDelegationRequest, QueryUnbondingDelegationResponse, QueryDelegatorDelegationsRequest, QueryDelegatorDelegationsResponse, QueryDelegatorUnbondingDelegationsRequest, QueryDelegatorUnbondingDelegationsResponse, QueryRedelegationsRequest, QueryRedelegationsResponse, QueryDelegatorValidatorsRequest, QueryDelegatorValidatorsResponse, QueryDelegatorValidatorRequest, QueryDelegatorValidatorResponse, QueryHistoricalInfoRequest, QueryHistoricalInfoResponse, QueryPoolRequest, QueryPoolResponse, QueryParamsRequest, QueryParamsResponse } from "./query";
export const createGetValidators = (clientResolver) => buildQuery({
    encode: QueryValidatorsRequest.encode,
    decode: QueryValidatorsResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "Validators",
    clientResolver
});
export const createGetValidator = (clientResolver) => buildQuery({
    encode: QueryValidatorRequest.encode,
    decode: QueryValidatorResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "Validator",
    clientResolver
});
export const createGetValidatorDelegations = (clientResolver) => buildQuery({
    encode: QueryValidatorDelegationsRequest.encode,
    decode: QueryValidatorDelegationsResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "ValidatorDelegations",
    clientResolver
});
export const createGetValidatorUnbondingDelegations = (clientResolver) => buildQuery({
    encode: QueryValidatorUnbondingDelegationsRequest.encode,
    decode: QueryValidatorUnbondingDelegationsResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "ValidatorUnbondingDelegations",
    clientResolver
});
export const createGetDelegation = (clientResolver) => buildQuery({
    encode: QueryDelegationRequest.encode,
    decode: QueryDelegationResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "Delegation",
    clientResolver
});
export const createGetUnbondingDelegation = (clientResolver) => buildQuery({
    encode: QueryUnbondingDelegationRequest.encode,
    decode: QueryUnbondingDelegationResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "UnbondingDelegation",
    clientResolver
});
export const createGetDelegatorDelegations = (clientResolver) => buildQuery({
    encode: QueryDelegatorDelegationsRequest.encode,
    decode: QueryDelegatorDelegationsResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "DelegatorDelegations",
    clientResolver
});
export const createGetDelegatorUnbondingDelegations = (clientResolver) => buildQuery({
    encode: QueryDelegatorUnbondingDelegationsRequest.encode,
    decode: QueryDelegatorUnbondingDelegationsResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "DelegatorUnbondingDelegations",
    clientResolver
});
export const createGetRedelegations = (clientResolver) => buildQuery({
    encode: QueryRedelegationsRequest.encode,
    decode: QueryRedelegationsResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "Redelegations",
    clientResolver
});
export const createGetDelegatorValidators = (clientResolver) => buildQuery({
    encode: QueryDelegatorValidatorsRequest.encode,
    decode: QueryDelegatorValidatorsResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "DelegatorValidators",
    clientResolver
});
export const createGetDelegatorValidator = (clientResolver) => buildQuery({
    encode: QueryDelegatorValidatorRequest.encode,
    decode: QueryDelegatorValidatorResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "DelegatorValidator",
    clientResolver
});
export const createGetHistoricalInfo = (clientResolver) => buildQuery({
    encode: QueryHistoricalInfoRequest.encode,
    decode: QueryHistoricalInfoResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "HistoricalInfo",
    clientResolver
});
export const createGetPool = (clientResolver) => buildQuery({
    encode: QueryPoolRequest.encode,
    decode: QueryPoolResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "Pool",
    clientResolver
});
export const createGetParams = (clientResolver) => buildQuery({
    encode: QueryParamsRequest.encode,
    decode: QueryParamsResponse.decode,
    service: "cosmos.staking.v1beta1.Query",
    method: "Params",
    clientResolver
});
