/// import { Connection, PublicKey } from "@solana/web3.js"; import { ReserveConfigProto } from "./structs"; import { ReserveInfo, ReserveContext, QuoteValue, WalletId, TokenAccount, PortProfile, StakingPool, StakingPoolContext } from "./models"; import { Environment } from "./Environment"; import { BN } from "@project-serum/anchor"; import { TransactionEnvelope, Provider } from "@saberhq/solana-contrib"; export declare const LENDING_MARKET_LEN = 258; export declare class Port { readonly environment: Environment; lendingMarket: PublicKey; connection: Connection; reserveContext?: ReserveContext; constructor(connection: Connection, environment: Environment, lendingMarket: PublicKey); setConnection(connection: Connection): void; setLendingMarket(lendingMarket: PublicKey): void; static forMainNet({ connection, profile, lendingMarket, }: { connection?: Connection; profile?: Environment; lendingMarket?: PublicKey; }): Port; getEnvironment(): Environment; load(): Promise; getTotalMarketCap(): Promise; getShareAccount(walletId: WalletId, context: ReserveContext): Promise; getPortProfile(walletId: WalletId): Promise; getReserveContext(): Promise; getStakingPoolContext(): Promise; getAllPortProfiles(): Promise; getStakingPool(stakingPoolKey: PublicKey): Promise; getReserve(reserveKey: PublicKey): Promise; createLendingMarket({ provider, owner, }: { provider: Provider; owner?: PublicKey; }): Promise<[TransactionEnvelope, PublicKey]>; createReserve({ provider, reserveConfig, transferAuthority, sourceTokenWallet, initialLiquidity, oracle, price, }: { provider: Provider; reserveConfig: ReserveConfigProto; transferAuthority: PublicKey; sourceTokenWallet: PublicKey; initialLiquidity: number | BN; oracle?: PublicKey; price?: BN; }): Promise<[TransactionEnvelope[], PublicKey]>; getLendingMarketAuthority(): Promise<[PublicKey, number]>; private createAccount; } //# sourceMappingURL=Port.d.ts.map