import type { TransportConfig } from '../transports/types.cjs'; export type CreateLocusPublicClientArgs = { /** JSON-RPC 엔드포인트 URL. */ rpcUrl: string; /** * 선택적 HTTP 트랜스포트 설정. 로드밸런서 힌트 (예: Locus `locuslb` 헤더) * 같은 용도로 `headers` 를 넘길 수 있다. `http()` 의 모든 옵션을 그대로 받는다. */ transport?: TransportConfig; }; /** * Locus 읽기 전용 클라이언트의 one-call 생성자. * * bare {@link createPublicClient} 를 HTTP 트랜스포트와 함께 감싸고, 두 표준 * read 액션 셋 (`publicActions` + `debugPublicActions`) 을 단일 `.extend()` * 호출로 합쳐 부착한다. 반환된 클라이언트는 두 셋 모두 정적 타입이 잡힌 * 상태로 노출된다. * * 생성 이후엔 모든 read RPC (`locus_getNodeStatus`, `locus_getAccountDetail`, * `calculateSpentByExpress`, `debug_viewContract`, ...) 가 타입이 잡힌 * 메서드로 호출 가능: * * ```ts * const client = createLocusPublicClient({ rpcUrl }); * const status = await client.getNodeStatus(); * const balance = await client.getAccountDetail({ account }); * ``` * * write TX 용 클라이언트는 {@link createLocusWalletClient} 참고. */ export declare function createLocusPublicClient(args: CreateLocusPublicClientArgs): import("./types.cjs").Client & { readonly allHeights: () => Promise; readonly balanceGrantList: () => Promise; readonly balanceList: () => Promise; readonly createAccount: () => Promise; readonly createNode: (param: import("../index.cjs").ParamsCreateNode) => Promise; readonly dumpAllAccounts: () => Promise; readonly echo: (str: string) => Promise; readonly gameChainCmd: (param: import("../index.cjs").ParamsGameChainCmd) => Promise; readonly getAccountsBalances: (param: import("../index.cjs").ParamsAccounts) => Promise; readonly getAccountsHeights: (param: import("../index.cjs").ParamsAccounts) => Promise; readonly getGuestsInfo: () => Promise; readonly getHomeShard: (param: import("../index.cjs").ParamsGetHomeShard) => Promise; readonly getImportAccount: (params: import("../index.cjs").ParamsGetImportAccount) => Promise; readonly getImportAccountLog: (params: import("../index.cjs").ParamsGetImportAccount) => Promise; readonly getKeys: (params: import("../index.cjs").ParamsAccount) => Promise; readonly getNodeBlocks: () => Promise; readonly getPeerPool: () => Promise; readonly getPeersInfo: () => Promise; readonly getVmeLog: (param: import("../index.cjs").ParamsVmeLog) => Promise; readonly importAccount: (params: import("../index.cjs").ParamsImportAccount) => Promise; readonly initReliableNodes: (param: import("../index.cjs").ParamsInitReliableNodes) => Promise; readonly noArgsRets: () => Promise; readonly nodeCmd: (cmd: string) => Promise; readonly removeHomeTxs: (param: import("../index.cjs").ParamsRemoveHomeTxs) => Promise; readonly requestVme: (params: import("../index.cjs").ParamsRequestVme) => Promise; readonly sendRawTransaction: (params: import("../index.cjs").ParamsSendRawTransaction) => Promise; readonly setImportAccountTx: (params: import("../index.cjs").ParamsSetImportAccountTx) => Promise; readonly setReliableNode: (param: import("../index.cjs").ParamsSetReliableNode) => Promise; readonly viewVme: (param: import("../index.cjs").ParamsCallVme) => Promise; readonly accountHeightsToDownload: (param: import("../index.cjs").ParamsAccountHeights) => Promise; readonly accountHeightsToUpload: (param: import("../index.cjs").ParamsAccountHeights) => Promise; readonly calculateAvailableByForward: (param: import("../index.cjs").ParamsCalculateAvailableByForward) => Promise; readonly calculateAvailableByForwardList: (param: import("../index.cjs").ParamsCalculateAvailableByForwardList) => Promise; readonly clientMessage: (param: import("../index.cjs").ParamStr) => Promise; readonly downloadAccountTxs: (param: import("../index.cjs").ParamsDownloadAccountTxs) => Promise; readonly findDuplicateSubscriber: (params: import("../index.cjs").ParamsFindDuplicateSubscriber) => Promise; readonly generateLatestStoredDataProof: (params: import("../index.cjs").ParamsGenerateLatestStoredDataProof) => Promise; readonly getAccountAssetList: (params: import("../index.cjs").ParamsGetAssetList) => Promise; readonly getAccountAssetObject: (params: import("../index.cjs").ParamsGetAssetObjects) => Promise; readonly getAccountDetail: (param: import("../index.cjs").ParamsAccount) => Promise; readonly getAccountHistory: (param: import("../index.cjs").ParamsAccountHistory) => Promise; readonly getAccountTokenList: (params: import("../index.cjs").ParamsAccount) => Promise; readonly getConciseNodeStatus: () => Promise; readonly getGenesisAccount: () => Promise; readonly getHomeTxDir: () => Promise; readonly getHomeTxFlushSeq: () => Promise; readonly getIdentityProof: (param: import("../index.cjs").ParamsGetIdentityProof) => Promise; readonly getInactiveTxList: (param: import("../index.cjs").ParamsAccount) => Promise; readonly getLaunchCommand: () => Promise; readonly getMontInfoList: (param: import("../index.cjs").ParamsAccount) => Promise; readonly getNodeStatus: () => Promise; readonly getNodeVersion: () => Promise; readonly getOwnerBalance: () => Promise; readonly getRoundState: (param: import("../index.cjs").ParamsRound) => Promise; readonly getRoundStatesList: (param: import("../index.cjs").ParamsRS) => Promise; readonly getShardOfAccount: (params: import("../index.cjs").ParamsAccount) => Promise; readonly getSyncState: () => Promise; readonly getTx: (param: import("../index.cjs").ParamsAccountAndIndex) => Promise; readonly getWorldRoundState: (param: import("../index.cjs").ParamsRound) => Promise; readonly getWorldRoundStatesList: (param: import("../index.cjs").ParamsRoundList) => Promise; readonly hasSystemToken: (params: import("../index.cjs").ParamsAccount) => Promise; readonly makeTxProof: (params: import("../index.cjs").ParamsTxList) => Promise; readonly queryAddress: (params: import("../index.cjs").ParamsQueryAddress) => Promise; readonly readTxListWitness: (params: import("../index.cjs").ParamsReadTxList) => Promise; readonly setHost: (param: import("../index.cjs").ParamsSetHost) => Promise; readonly shutdown: () => Promise; readonly subscribeAddress: (params: import("../index.cjs").ParamsSubscribeAddress) => Promise; readonly upliftProofW: (params: import("../index.cjs").ParamsUpliftProofW) => Promise; readonly uploadAccountTxs: (param: import("../index.cjs").ParamsUploadAccountTxs) => Promise; readonly verifyAndSignChallenge: (param: import("../index.cjs").ParamsVerifyAndSignChallenge) => Promise; readonly verifyIdentityProof: (param: import("../index.cjs").ParamsVerifyIdentityProof) => Promise; readonly verifyLatestStoredDataProof: (params: import("../index.cjs").ParamsLatestStoredDataProof) => Promise; readonly verifyProofW: (params: import("../index.cjs").ParamsVerifyProofW) => Promise; readonly verifyTxListWitness: (params: import("../index.cjs").ParamsTxListWitness) => Promise; readonly waitHomeTxChange: (params: import("../index.cjs").ParamsWaitHomeTxChange) => Promise; }; /** 추론된 반환 타입 — 이 클라이언트를 담는 필드/변수의 타입 선언에 사용. */ export type LocusPublicClient = ReturnType;