///
import { EventEmitter } from 'events';
import { Connection, errors, validate } from './common';
import * as server from './server/server';
import prepareKYCSet from './transaction/kyc';
import getKYCInfo from './ledger/kycinfo';
import getTransaction from './ledger/transaction';
import getTransactions from './ledger/transactions';
import getTrustlines from './ledger/trustlines';
import getBalances from './ledger/balances';
import getBalanceSheet from './ledger/balance-sheet';
import getPaths from './ledger/pathfind';
import getOrders from './ledger/orders';
import getOrderbook from './ledger/orderbook';
import getSettings from './ledger/settings';
import getAccountInfo from './ledger/accountinfo';
import getPaymentChannel from './ledger/payment-channel';
import preparePayment from './transaction/payment';
import prepareTrustline from './transaction/trustline';
import prepareOrder from './transaction/order';
import prepareOrderCancellation from './transaction/ordercancellation';
import prepareEscrowCreation from './transaction/escrow-creation';
import prepareEscrowExecution from './transaction/escrow-execution';
import prepareEscrowCancellation from './transaction/escrow-cancellation';
import preparePaymentChannelCreate from './transaction/payment-channel-create';
import preparePaymentChannelFund from './transaction/payment-channel-fund';
import preparePaymentChannelClaim from './transaction/payment-channel-claim';
import prepareSettings from './transaction/settings';
import sign from './transaction/sign';
import combine from './transaction/combine';
import submit from './transaction/submit';
import { generateAddressAPI } from './offline/generate-address';
import computeLedgerHash from './offline/ledgerhash';
import signPaymentChannelClaim from './offline/sign-payment-channel-claim';
import verifyPaymentChannelClaim from './offline/verify-payment-channel-claim';
import getLedger from './ledger/ledger';
import getConfigInfo from './ledger/configinfo';
import { verifyMessage } from './offline/verify-message';
import { signMessage } from './offline/sign-message';
import RangeSet from './common/rangeset';
import * as ledgerUtils from './ledger/utils';
import * as schemaValidator from './common/schema-validator';
declare type APIOptions = {
servers?: Array;
server?: string;
feeCushion?: number;
trace?: boolean;
proxy?: string;
timeout?: number;
};
declare class RestrictedConnection extends Connection {
request(request: any, timeout?: number): Promise;
}
declare class CasinocoinAPI extends EventEmitter {
_feeCushion: number;
connection: RestrictedConnection;
static _PRIVATE: {
validate: typeof validate;
RangeSet: typeof RangeSet;
ledgerUtils: typeof ledgerUtils;
schemaValidator: typeof schemaValidator;
};
constructor(options?: APIOptions);
connect: typeof server.connect;
disconnect: typeof server.disconnect;
isConnected: typeof server.isConnected;
getServerInfo: typeof server.getServerInfo;
getFee: typeof server.getFee;
getLedgerVersion: typeof server.getLedgerVersion;
getConfigInfo: typeof getConfigInfo;
getTransaction: typeof getTransaction;
getTransactions: typeof getTransactions;
getTrustlines: typeof getTrustlines;
getBalances: typeof getBalances;
getBalanceSheet: typeof getBalanceSheet;
getPaths: typeof getPaths;
getOrders: typeof getOrders;
getOrderbook: typeof getOrderbook;
getSettings: typeof getSettings;
getAccountInfo: typeof getAccountInfo;
getPaymentChannel: typeof getPaymentChannel;
getLedger: typeof getLedger;
preparePayment: typeof preparePayment;
prepareTrustline: typeof prepareTrustline;
prepareOrder: typeof prepareOrder;
prepareOrderCancellation: typeof prepareOrderCancellation;
prepareEscrowCreation: typeof prepareEscrowCreation;
prepareEscrowExecution: typeof prepareEscrowExecution;
prepareEscrowCancellation: typeof prepareEscrowCancellation;
preparePaymentChannelCreate: typeof preparePaymentChannelCreate;
preparePaymentChannelFund: typeof preparePaymentChannelFund;
preparePaymentChannelClaim: typeof preparePaymentChannelClaim;
prepareSettings: typeof prepareSettings;
sign: typeof sign;
combine: typeof combine;
submit: typeof submit;
prepareKYCSet: typeof prepareKYCSet;
getKYCInfo: typeof getKYCInfo;
generateAddress: typeof generateAddressAPI;
deriveKeypair: any;
deriveAddress: any;
generateSeed: any;
computeLedgerHash: typeof computeLedgerHash;
signPaymentChannelClaim: typeof signPaymentChannelClaim;
verifyPaymentChannelClaim: typeof verifyPaymentChannelClaim;
verifyMessage: typeof verifyMessage;
signMessage: typeof signMessage;
errors: typeof errors;
isValidAddress: any;
isValidSecret: typeof schemaValidator.isValidSecret;
}
export { CasinocoinAPI };