import type { ParamsDirectCall } from '../../autogen/types/rpc/params-direct-call.cjs'; import type { RpcDirectCallResult } from '../../autogen/types/rpc/rpc-direct-call-result.cjs'; import type { WalletClient } from '../../clients/types.cjs'; /** * [임시] caller-signed VME direct-call 전용 메서드. * * 노드는 build·submit 을 단일 RPC `debug_directCall` 로 통합했다(sign 유무로 분기). * 하지만 그 사이에 caller 서명이 끼어야 하므로("1 메서드 = 1 RPC" 형태가 아님) * 같은 `debug_directCall` 을 두 번 호출하는 composite 로 묶는다: * 1) directCall (sign 없이) — 노드가 KeyProof 를 채운 미서명 요청 + signableHash 반환 * 2) (signableHash 서명) — caller 의 normal 키로 서명 (노드는 KeyProof.Pkey = * 계정 normal pkey 로 검증; 일반 tx 서명과 동일 primitive) * 3) directCall (sign 부착) — { request, sign } 제출 → admit * * 표준 prepare→sign→send 헬퍼(_prepareTransaction 등)는 Locus tx 엔벨로프 * (hash/tx) 전제라 build/submit 의 다른 shape(signableHash/request)에 맞지 않아 * 별도 메서드로 둔다. autogen 이 아니므로 코드 재생성에도 보존된다. */ export declare function directCall(client: WalletClient, param: Omit): Promise;