import { PageRequest } from '@ritbit/v4-proto/src/codegen/cosmos/base/query/v1beta1/pagination';
import { AxiosProxyConfig } from 'axios';
import { BroadcastOptions, DenomConfig } from './types';
export * from '../lib/constants';
/**
 * Disclaimer: Note that as of the date hereof, the testnet and RITBIT Chain deployment are the only known deployments of the
 * RITBIT Chain software, and other deployment options may be added.
 */
export declare const DEV_CHAIN_ID = "ritbit-local";
export declare const STAGING_CHAIN_ID = "ritbit-testnet";
export declare const TESTNET_CHAIN_ID = "ritbit-testnet";
export declare const LOCAL_CHAIN_ID = "ritbit-local";
export declare const MAINNET_CHAIN_ID = "ritbit-mainnet";
export declare enum IndexerApiHost {
    TESTNET = "https://indexer.testnet.tyranodex.xyz/",
    STAGING = "https://indexer.testnet.tyranodex.xyz/",
    LOCAL = "http://local.ritbit.ru:3002",
    MAINNET = "https://indexer.tyranodex.xyz"
}
export declare enum IndexerWSHost {
    TESTNET = "wss://indexer.testnet.tyranodex.xyz/v4/ws",
    STAGING = "wss://indexer.testnet.tyranodex.xyz/v4/ws",
    LOCAL = "ws://local.ritbit.ru:3003",
    MAINNET = "wss://indexer.tyranodex.xyz/v4/ws"
}
export declare enum FaucetApiHost {
    TESTNET = "https://faucet.testnet.tyranodex.xyz"
}
export declare enum ValidatorApiHost {
    TESTNET = "https://rpc.testnet.tyranodex.xyz",
    STAGING = "https://rpc.testnet.tyranodex.xyz",
    LOCAL = "http://local.ritbit.ru:26657",
    MAINNET = "https://rpc.tyranodex.xyz"
}
export declare enum NetworkId {
    TESTNET = "ritbit-testnet",
    MAINNET = "ritbit-mainnet"
}
export declare const NETWORK_ID_TESTNET: string;
export declare const NETWORK_ID_MAINNET: string;
export declare enum SelectedGasDenom {
    NATIVE = "NATIVE",
    USDC = "USDC"
}
export declare const TYPE_URL_MSG_SEND = "/cosmos.bank.v1beta1.MsgSend";
export declare const TYPE_URL_MSG_SUBMIT_PROPOSAL = "/cosmos.gov.v1.MsgSubmitProposal";
export declare const TYPE_URL_MSG_PLACE_ORDER = "/ritbit.clob.MsgPlaceOrder";
export declare const TYPE_URL_MSG_CANCEL_ORDER = "/ritbit.clob.MsgCancelOrder";
export declare const TYPE_URL_BATCH_CANCEL = "/ritbit.clob.MsgBatchCancel";
export declare const TYPE_URL_MSG_CREATE_CLOB_PAIR = "/ritbit.clob.MsgCreateClobPair";
export declare const TYPE_URL_MSG_UPDATE_CLOB_PAIR = "/ritbit.clob.MsgUpdateClobPair";
export declare const TYPE_URL_MSG_DELAY_MESSAGE = "/ritbit.delaymsg.MsgDelayMessage";
export declare const TYPE_URL_MSG_CREATE_MARKET_PERMISSIONLESS = "/ritbit.listing.MsgCreateMarketPermissionless";
export declare const TYPE_URL_MSG_CREATE_PERPETUAL = "/ritbit.perpetuals.MsgCreatePerpetual";
export declare const TYPE_URL_MSG_CREATE_ORACLE_MARKET = "/ritbit.prices.MsgCreateOracleMarket";
export declare const TYPE_URL_MSG_CREATE_TRANSFER = "/ritbit.sending.MsgCreateTransfer";
export declare const TYPE_URL_MSG_WITHDRAW_FROM_SUBACCOUNT = "/ritbit.sending.MsgWithdrawFromSubaccount";
export declare const TYPE_URL_MSG_DEPOSIT_TO_SUBACCOUNT = "/ritbit.sending.MsgDepositToSubaccount";
export declare const TYPE_URL_MSG_REGISTER_AFFILIATE = "/ritbit.affiliates.MsgRegisterAffiliate";
export declare const TYPE_URL_MSG_DEPOSIT_TO_MEGAVAULT = "/ritbit.vault.MsgDepositToMegavault";
export declare const TYPE_URL_MSG_WITHDRAW_FROM_MEGAVAULT = "/ritbit.vault.MsgWithdrawFromMegavault";
export declare const TYPE_URL_MSG_DELEGATE = "/cosmos.staking.v1beta1.MsgDelegate";
export declare const TYPE_URL_MSG_UNDELEGATE = "/cosmos.staking.v1beta1.MsgUndelegate";
export declare const TYPE_URL_MSG_WITHDRAW_DELEGATOR_REWARD = "/cosmos.distribution.v1beta1.MsgWithdrawDelegatorReward";
export declare const TYPE_URL_MSG_WITHDRAWAL = "/ritbit.bridge.MsgWithdrawal";
export declare const TYPE_URL_MSG_ADD_AUTHENTICATOR = "/ritbit.accountplus.MsgAddAuthenticator";
export declare const TYPE_URL_MSG_REMOVE_AUTHENTICATOR = "/ritbit.accountplus.MsgRemoveAuthenticator";
export declare const GOV_MODULE_ADDRESS = "rit10d07y265gmmuvt4z0w9aw880jnsr700j086rvs";
export declare const DELAYMSG_MODULE_ADDRESS = "rit1mkkvp26dngu6n8rmalaxyp3gwkjuzztqg7pc3h";
export declare const MEGAVAULT_MODULE_ADDRESS = "rit18tkxrnrkqc2t0lr3zxr5g6a4hdvqksyl6u4m0h";
export declare enum MarketStatisticDay {
    ONE = "1",
    SEVEN = "7",
    THIRTY = "30"
}
export declare enum OrderType {
    LIMIT = "LIMIT",
    MARKET = "MARKET",
    STOP_LIMIT = "STOP_LIMIT",
    TAKE_PROFIT_LIMIT = "TAKE_PROFIT",
    STOP_MARKET = "STOP_MARKET",
    TAKE_PROFIT_MARKET = "TAKE_PROFIT_MARKET"
}
export declare enum OrderSide {
    BUY = "BUY",
    SELL = "SELL"
}
export declare enum OrderTimeInForce {
    GTT = "GTT",
    IOC = "IOC",
    FOK = "FOK"
}
export declare enum OrderExecution {
    DEFAULT = "DEFAULT",
    IOC = "IOC",
    FOK = "FOK",
    POST_ONLY = "POST_ONLY"
}
export declare enum OrderStatus {
    BEST_EFFORT_OPENED = "BEST_EFFORT_OPENED",
    OPEN = "OPEN",
    FILLED = "FILLED",
    BEST_EFFORT_CANCELED = "BEST_EFFORT_CANCELED",
    CANCELED = "CANCELED"
}
export declare enum TickerType {
    PERPETUAL = "PERPETUAL"
}
export declare enum PositionStatus {
    OPEN = "OPEN",
    CLOSED = "CLOSED",
    LIQUIDATED = "LIQUIDATED"
}
export declare enum TimePeriod {
    ONE_DAY = "ONE_DAY",
    SEVEN_DAYS = "SEVEN_DAYS"
}
export declare enum PnlTickInterval {
    HOUR = "hour",
    day = "day"
}
export declare enum AuthenticatorType {
    ALL_OF = "AllOf",
    ANY_OF = "AnyOf",
    SIGNATURE_VERIFICATION = "SignatureVerification",
    MESSAGE_FILTER = "MessageFilter",
    CLOB_PAIR_ID_FILTER = "ClobPairIdFilter",
    SUBACCOUNT_FILTER = "SubaccountFilter"
}
export interface Authenticator {
    type: AuthenticatorType;
    config: string | Authenticator[];
}
export declare enum TradingRewardAggregationPeriod {
    DAILY = "DAILY",
    WEEKLY = "WEEKLY",
    MONTHLY = "MONTHLY"
}
export declare const DEFAULT_API_TIMEOUT: number;
export declare const MAX_MEMO_CHARACTERS: number;
export declare const SHORT_BLOCK_WINDOW: number;
export declare const SHORT_BLOCK_FORWARD: number;
export declare const PAGE_REQUEST: PageRequest;
export declare class IndexerConfig {
    restEndpoint: string;
    websocketEndpoint: string;
    proxy?: AxiosProxyConfig;
    constructor(restEndpoint: string, websocketEndpoint: string, proxy?: AxiosProxyConfig);
}
export declare class ValidatorConfig {
    restEndpoint: string;
    chainId: string;
    denoms: DenomConfig;
    broadcastOptions?: BroadcastOptions;
    defaultClientMemo?: string;
    useTimestampNonce?: boolean;
    timestampNonceOffsetMs?: number;
    constructor(restEndpoint: string, chainId: string, denoms: DenomConfig, broadcastOptions?: BroadcastOptions, defaultClientMemo?: string, useTimestampNonce?: boolean, timestampNonceOffsetMs?: number);
}
export declare class Network {
    env: string;
    indexerConfig: IndexerConfig;
    validatorConfig: ValidatorConfig;
    constructor(env: string, indexerConfig: IndexerConfig, validatorConfig: ValidatorConfig);
    static testnet(): Network;
    static staging(): Network;
    static local(): Network;
    static mainnet(): Network;
    getString(): string;
}
//# sourceMappingURL=constants.d.ts.map