@digitalworld/digital-world-sdk 16.0.0 → 16.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/README.md +5 -5
  2. package/dist/digital-world-sdk-axios.js +52 -47
  3. package/dist/digital-world-sdk-axios.js.map +1 -1
  4. package/dist/digital-world-sdk-axios.min.js +1 -1
  5. package/dist/digital-world-sdk-axios.min.js.map +1 -1
  6. package/dist/digital-world-sdk.js +52 -47
  7. package/dist/digital-world-sdk.js.map +1 -1
  8. package/dist/digital-world-sdk.min.js +6 -6
  9. package/dist/digital-world-sdk.min.js.map +1 -1
  10. package/lib/axios/cjs/base/contract.js +2 -2
  11. package/lib/axios/cjs/base/contract.js.map +1 -1
  12. package/lib/axios/cjs/base/invocation.js.map +1 -1
  13. package/lib/axios/cjs/base/numbers/sc_int.js +1 -1
  14. package/lib/axios/cjs/base/numbers/sc_int.js.map +1 -1
  15. package/lib/axios/cjs/base/operation.js +1 -1
  16. package/lib/axios/cjs/base/operation.js.map +1 -1
  17. package/lib/axios/cjs/base/operations/invoke_host_function.js +2 -2
  18. package/lib/axios/cjs/base/operations/invoke_host_function.js.map +1 -1
  19. package/lib/axios/cjs/base/operations/revoke_sponsorship.js.map +1 -1
  20. package/lib/axios/cjs/bindings/config.js +4 -4
  21. package/lib/axios/cjs/bindings/config.js.map +1 -1
  22. package/lib/axios/cjs/bindings/generator.js +4 -4
  23. package/lib/axios/cjs/bindings/generator.js.map +1 -1
  24. package/lib/axios/cjs/bindings/types.js.map +1 -1
  25. package/lib/axios/cjs/bindings/utils.js +2 -2
  26. package/lib/axios/cjs/bindings/utils.js.map +1 -1
  27. package/lib/axios/cjs/bindings/wasm_fetcher.js +2 -2
  28. package/lib/axios/cjs/bindings/wasm_fetcher.js.map +1 -1
  29. package/lib/axios/cjs/contract/assembled_transaction.js.map +1 -1
  30. package/lib/axios/cjs/contract/spec.js +1 -1
  31. package/lib/axios/cjs/contract/spec.js.map +1 -1
  32. package/lib/axios/cjs/contract/types.js.map +1 -1
  33. package/lib/axios/cjs/gateway/gateway_axios_client.js +1 -1
  34. package/lib/axios/cjs/gateway/server_api.js.map +1 -1
  35. package/lib/axios/cjs/rpc/api.js.map +1 -1
  36. package/lib/axios/cjs/rpc/axios.js +1 -1
  37. package/lib/axios/cjs/rpc/server.js +32 -27
  38. package/lib/axios/cjs/rpc/server.js.map +1 -1
  39. package/lib/axios/cjs/webauth/utils.js.map +1 -1
  40. package/lib/axios/esm/base/contract.d.ts +4 -4
  41. package/lib/axios/esm/base/contract.js +2 -2
  42. package/lib/axios/esm/base/contract.js.map +1 -1
  43. package/lib/axios/esm/base/invocation.d.ts +2 -2
  44. package/lib/axios/esm/base/invocation.js.map +1 -1
  45. package/lib/axios/esm/base/numbers/sc_int.d.ts +2 -2
  46. package/lib/axios/esm/base/numbers/sc_int.js +1 -1
  47. package/lib/axios/esm/base/numbers/sc_int.js.map +1 -1
  48. package/lib/axios/esm/base/operation.d.ts +2 -2
  49. package/lib/axios/esm/base/operation.js +2 -2
  50. package/lib/axios/esm/base/operation.js.map +1 -1
  51. package/lib/axios/esm/base/operations/index.d.ts +1 -1
  52. package/lib/axios/esm/base/operations/invoke_host_function.d.ts +5 -5
  53. package/lib/axios/esm/base/operations/invoke_host_function.js +2 -2
  54. package/lib/axios/esm/base/operations/invoke_host_function.js.map +1 -1
  55. package/lib/axios/esm/base/operations/revoke_sponsorship.d.ts +1 -1
  56. package/lib/axios/esm/base/operations/revoke_sponsorship.js.map +1 -1
  57. package/lib/axios/esm/base/operations/types.d.ts +2 -2
  58. package/lib/axios/esm/bindings/config.js +4 -4
  59. package/lib/axios/esm/bindings/config.js.map +1 -1
  60. package/lib/axios/esm/bindings/generator.d.ts +7 -7
  61. package/lib/axios/esm/bindings/generator.js +4 -4
  62. package/lib/axios/esm/bindings/generator.js.map +1 -1
  63. package/lib/axios/esm/bindings/types.d.ts +1 -1
  64. package/lib/axios/esm/bindings/types.js.map +1 -1
  65. package/lib/axios/esm/bindings/utils.d.ts +4 -4
  66. package/lib/axios/esm/bindings/utils.js +2 -2
  67. package/lib/axios/esm/bindings/utils.js.map +1 -1
  68. package/lib/axios/esm/bindings/wasm_fetcher.js +2 -2
  69. package/lib/axios/esm/bindings/wasm_fetcher.js.map +1 -1
  70. package/lib/axios/esm/contract/assembled_transaction.d.ts +1 -1
  71. package/lib/axios/esm/contract/assembled_transaction.js.map +1 -1
  72. package/lib/axios/esm/contract/spec.js +1 -1
  73. package/lib/axios/esm/contract/spec.js.map +1 -1
  74. package/lib/axios/esm/contract/types.d.ts +2 -2
  75. package/lib/axios/esm/contract/types.js.map +1 -1
  76. package/lib/axios/esm/gateway/gateway_axios_client.js +1 -1
  77. package/lib/axios/esm/gateway/server_api.d.ts +2 -2
  78. package/lib/axios/esm/gateway/server_api.js.map +1 -1
  79. package/lib/axios/esm/rpc/api.d.ts +1 -1
  80. package/lib/axios/esm/rpc/api.js.map +1 -1
  81. package/lib/axios/esm/rpc/axios.js +1 -1
  82. package/lib/axios/esm/rpc/browser.d.ts +1 -1
  83. package/lib/axios/esm/rpc/server.d.ts +26 -26
  84. package/lib/axios/esm/rpc/server.js +32 -27
  85. package/lib/axios/esm/rpc/server.js.map +1 -1
  86. package/lib/axios/esm/webauth/utils.d.ts +2 -2
  87. package/lib/axios/esm/webauth/utils.js.map +1 -1
  88. package/lib/cjs/base/contract.js +2 -2
  89. package/lib/cjs/base/contract.js.map +1 -1
  90. package/lib/cjs/base/invocation.js.map +1 -1
  91. package/lib/cjs/base/numbers/sc_int.js +1 -1
  92. package/lib/cjs/base/numbers/sc_int.js.map +1 -1
  93. package/lib/cjs/base/operation.js +1 -1
  94. package/lib/cjs/base/operation.js.map +1 -1
  95. package/lib/cjs/base/operations/invoke_host_function.js +2 -2
  96. package/lib/cjs/base/operations/invoke_host_function.js.map +1 -1
  97. package/lib/cjs/base/operations/revoke_sponsorship.js.map +1 -1
  98. package/lib/cjs/bindings/config.js +4 -4
  99. package/lib/cjs/bindings/config.js.map +1 -1
  100. package/lib/cjs/bindings/generator.js +4 -4
  101. package/lib/cjs/bindings/generator.js.map +1 -1
  102. package/lib/cjs/bindings/types.js.map +1 -1
  103. package/lib/cjs/bindings/utils.js +2 -2
  104. package/lib/cjs/bindings/utils.js.map +1 -1
  105. package/lib/cjs/bindings/wasm_fetcher.js +2 -2
  106. package/lib/cjs/bindings/wasm_fetcher.js.map +1 -1
  107. package/lib/cjs/contract/assembled_transaction.js.map +1 -1
  108. package/lib/cjs/contract/spec.js +1 -1
  109. package/lib/cjs/contract/spec.js.map +1 -1
  110. package/lib/cjs/contract/types.js.map +1 -1
  111. package/lib/cjs/gateway/gateway_axios_client.js +1 -1
  112. package/lib/cjs/gateway/server_api.js.map +1 -1
  113. package/lib/cjs/rpc/api.js.map +1 -1
  114. package/lib/cjs/rpc/axios.js +1 -1
  115. package/lib/cjs/rpc/server.js +32 -27
  116. package/lib/cjs/rpc/server.js.map +1 -1
  117. package/lib/cjs/webauth/utils.js.map +1 -1
  118. package/lib/esm/base/contract.d.ts +4 -4
  119. package/lib/esm/base/contract.js +2 -2
  120. package/lib/esm/base/contract.js.map +1 -1
  121. package/lib/esm/base/invocation.d.ts +2 -2
  122. package/lib/esm/base/invocation.js.map +1 -1
  123. package/lib/esm/base/numbers/sc_int.d.ts +2 -2
  124. package/lib/esm/base/numbers/sc_int.js +1 -1
  125. package/lib/esm/base/numbers/sc_int.js.map +1 -1
  126. package/lib/esm/base/operation.d.ts +2 -2
  127. package/lib/esm/base/operation.js +2 -2
  128. package/lib/esm/base/operation.js.map +1 -1
  129. package/lib/esm/base/operations/index.d.ts +1 -1
  130. package/lib/esm/base/operations/invoke_host_function.d.ts +5 -5
  131. package/lib/esm/base/operations/invoke_host_function.js +2 -2
  132. package/lib/esm/base/operations/invoke_host_function.js.map +1 -1
  133. package/lib/esm/base/operations/revoke_sponsorship.d.ts +1 -1
  134. package/lib/esm/base/operations/revoke_sponsorship.js.map +1 -1
  135. package/lib/esm/base/operations/types.d.ts +2 -2
  136. package/lib/esm/bindings/config.js +4 -4
  137. package/lib/esm/bindings/config.js.map +1 -1
  138. package/lib/esm/bindings/generator.d.ts +7 -7
  139. package/lib/esm/bindings/generator.js +4 -4
  140. package/lib/esm/bindings/generator.js.map +1 -1
  141. package/lib/esm/bindings/types.d.ts +1 -1
  142. package/lib/esm/bindings/types.js.map +1 -1
  143. package/lib/esm/bindings/utils.d.ts +4 -4
  144. package/lib/esm/bindings/utils.js +2 -2
  145. package/lib/esm/bindings/utils.js.map +1 -1
  146. package/lib/esm/bindings/wasm_fetcher.js +2 -2
  147. package/lib/esm/bindings/wasm_fetcher.js.map +1 -1
  148. package/lib/esm/contract/assembled_transaction.d.ts +1 -1
  149. package/lib/esm/contract/assembled_transaction.js.map +1 -1
  150. package/lib/esm/contract/spec.js +1 -1
  151. package/lib/esm/contract/spec.js.map +1 -1
  152. package/lib/esm/contract/types.d.ts +2 -2
  153. package/lib/esm/contract/types.js.map +1 -1
  154. package/lib/esm/gateway/gateway_axios_client.js +1 -1
  155. package/lib/esm/gateway/server_api.d.ts +2 -2
  156. package/lib/esm/gateway/server_api.js.map +1 -1
  157. package/lib/esm/rpc/api.d.ts +1 -1
  158. package/lib/esm/rpc/api.js.map +1 -1
  159. package/lib/esm/rpc/axios.js +1 -1
  160. package/lib/esm/rpc/browser.d.ts +1 -1
  161. package/lib/esm/rpc/server.d.ts +26 -26
  162. package/lib/esm/rpc/server.js +32 -27
  163. package/lib/esm/rpc/server.js.map +1 -1
  164. package/lib/esm/webauth/utils.d.ts +2 -2
  165. package/lib/esm/webauth/utils.js.map +1 -1
  166. package/package.json +41 -39
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sources":["../../../src/rpc/api.ts"],"sourcesContent":["import { Contract, SorobanDataBuilder, xdr } from \"../base/index.js\";\n\n/* tslint:disable-next-line:no-namespace */\nexport namespace Api {\n export interface GetHealthResponse {\n latestLedger: number;\n ledgerRetentionWindow: number;\n oldestLedger: number;\n status: \"healthy\";\n }\n\n export interface LedgerEntryResult {\n lastModifiedLedgerSeq?: number;\n key: xdr.LedgerKey;\n val: xdr.LedgerEntryData;\n liveUntilLedgerSeq?: number;\n }\n\n export interface RawLedgerEntryResult {\n lastModifiedLedgerSeq?: number;\n /** a base-64 encoded {@link xdr.LedgerKey} instance */\n key: string;\n /** a base-64 encoded {@link xdr.LedgerEntryData} instance */\n xdr: string;\n /**\n * optional, a future ledger number upon which this entry will expire\n * based on https://github.com/stellar/soroban-tools/issues/1010\n */\n liveUntilLedgerSeq?: number;\n }\n\n /** An XDR-parsed version of {@link RawLedgerEntryResult} */\n export interface GetLedgerEntriesResponse {\n entries: LedgerEntryResult[];\n latestLedger: number;\n }\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLedgerEntries */\n export interface RawGetLedgerEntriesResponse {\n entries?: RawLedgerEntryResult[];\n latestLedger: number;\n }\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getNetwork */\n export interface GetNetworkResponse {\n friendbotUrl?: string;\n passphrase: string;\n protocolVersion: string;\n }\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLatestLedger */\n export interface GetLatestLedgerResponse {\n id: string;\n sequence: number;\n protocolVersion: string;\n closeTime: string;\n headerXdr: xdr.LedgerHeader;\n metadataXdr: xdr.LedgerCloseMeta;\n }\n\n export interface RawGetLatestLedgerResponse {\n id: string;\n sequence: number;\n protocolVersion: string;\n closeTime: string;\n /** a base-64 encoded {@link xdr.LedgerHeader} instance */\n headerXdr: string;\n /** a base-64 encoded {@link xdr.LedgerCloseMeta} instance */\n metadataXdr: string;\n }\n\n export enum GetTransactionStatus {\n SUCCESS = \"SUCCESS\",\n NOT_FOUND = \"NOT_FOUND\",\n FAILED = \"FAILED\",\n }\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getTransaction */\n export type GetTransactionResponse =\n | GetSuccessfulTransactionResponse\n | GetFailedTransactionResponse\n | GetMissingTransactionResponse;\n\n interface GetAnyTransactionResponse {\n status: GetTransactionStatus;\n txHash: string;\n latestLedger: number;\n latestLedgerCloseTime: number;\n oldestLedger: number;\n oldestLedgerCloseTime: number;\n }\n\n export interface GetMissingTransactionResponse extends GetAnyTransactionResponse {\n status: GetTransactionStatus.NOT_FOUND;\n }\n\n export interface GetFailedTransactionResponse extends GetAnyTransactionResponse {\n status: GetTransactionStatus.FAILED;\n\n ledger: number;\n createdAt: number;\n applicationOrder: number;\n feeBump: boolean;\n envelopeXdr: xdr.TransactionEnvelope;\n resultXdr: xdr.TransactionResult;\n resultMetaXdr: xdr.TransactionMeta;\n diagnosticEventsXdr?: xdr.DiagnosticEvent[];\n events: TransactionEvents;\n }\n\n export interface GetSuccessfulTransactionResponse extends GetAnyTransactionResponse {\n status: GetTransactionStatus.SUCCESS;\n\n ledger: number;\n createdAt: number;\n applicationOrder: number;\n feeBump: boolean;\n envelopeXdr: xdr.TransactionEnvelope;\n resultXdr: xdr.TransactionResult;\n resultMetaXdr: xdr.TransactionMeta;\n diagnosticEventsXdr?: xdr.DiagnosticEvent[];\n\n returnValue?: xdr.ScVal; // present iff resultMeta is a v3|v4\n events: TransactionEvents;\n }\n\n export interface RawGetTransactionResponse {\n status: GetTransactionStatus;\n latestLedger: number;\n latestLedgerCloseTime: number;\n oldestLedger: number;\n oldestLedgerCloseTime: number;\n txHash: string;\n\n // the fields below are set if status is SUCCESS\n applicationOrder?: number;\n feeBump?: boolean;\n ledger?: number;\n createdAt?: number;\n\n envelopeXdr?: string;\n resultXdr?: string;\n resultMetaXdr?: string;\n diagnosticEventsXdr?: string[];\n\n events?: RawTransactionEvents;\n }\n\n export type GetTransactionsRequest =\n | {\n startLedger: number;\n pagination?: {\n cursor?: never;\n limit?: number;\n };\n }\n | {\n startLedger?: never;\n pagination: {\n cursor: string;\n limit?: number;\n };\n };\n\n export interface RawTransactionEvents {\n transactionEventsXdr?: string[];\n contractEventsXdr?: string[][];\n }\n\n export interface RawTransactionInfo {\n status: GetTransactionStatus;\n ledger: number;\n createdAt: number;\n applicationOrder: number;\n feeBump: boolean;\n txHash: string;\n\n envelopeXdr?: string;\n resultXdr?: string;\n resultMetaXdr?: string;\n diagnosticEventsXdr?: string[];\n\n events?: RawTransactionEvents;\n }\n\n export interface TransactionEvents {\n transactionEventsXdr: xdr.TransactionEvent[];\n contractEventsXdr: xdr.ContractEvent[][];\n }\n\n export interface TransactionInfo {\n status: GetTransactionStatus;\n ledger: number;\n createdAt: number;\n applicationOrder: number;\n feeBump: boolean;\n txHash: string;\n\n envelopeXdr: xdr.TransactionEnvelope;\n resultXdr: xdr.TransactionResult;\n resultMetaXdr: xdr.TransactionMeta;\n returnValue?: xdr.ScVal;\n diagnosticEventsXdr?: xdr.DiagnosticEvent[];\n\n events: TransactionEvents;\n }\n\n export interface GetTransactionsResponse {\n transactions: TransactionInfo[];\n latestLedger: number;\n latestLedgerCloseTimestamp: number;\n oldestLedger: number;\n oldestLedgerCloseTimestamp: number;\n cursor: string;\n }\n\n export interface RawGetTransactionsResponse {\n transactions: RawTransactionInfo[] | null;\n latestLedger: number;\n latestLedgerCloseTimestamp: number;\n oldestLedger: number;\n oldestLedgerCloseTimestamp: number;\n cursor: string;\n }\n\n export type EventType = \"contract\" | \"system\";\n\n export interface EventFilter {\n type?: EventType;\n contractIds?: string[];\n topics?: string[][];\n }\n\n interface RetentionState {\n latestLedger: number;\n oldestLedger: number;\n latestLedgerCloseTime: string;\n oldestLedgerCloseTime: string;\n }\n\n /**\n * Request parameters for fetching events from the Stellar network.\n *\n * **Important**: This type enforces mutually exclusive pagination modes:\n * - **Ledger range mode**: Use `startLedger` and `endLedger` (cursor must be omitted)\n * - **Cursor pagination mode**: Use `cursor` (startLedger and endLedger must be omitted)\n *\n * @example\n * ```ts\n * // ✅ Correct: Ledger range mode\n * const rangeRequest: GetEventsRequest = {\n * filters: [],\n * startLedger: 1000,\n * endLedger: 2000,\n * limit: 100\n * };\n * ```\n *\n * @example\n * ```ts\n * // ✅ Correct: Cursor pagination mode\n * const cursorRequest: GetEventsRequest = {\n * filters: [],\n * cursor: \"some-cursor-value\",\n * limit: 100\n * };\n * ```\n *\n * @example\n * ```ts\n * // ❌ Invalid: Cannot mix cursor with ledger range\n * const invalidRequest = {\n * filters: [],\n * startLedger: 1000, // ❌ Cannot use with cursor\n * endLedger: 2000, // ❌ Cannot use with cursor\n * cursor: \"cursor\", // ❌ Cannot use with ledger range\n * limit: 100\n * };\n * ```\n *\n * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getEvents | getEvents API reference}\n */\n export type GetEventsRequest =\n | {\n filters: Api.EventFilter[];\n startLedger: number;\n endLedger?: number;\n cursor?: never; // explicitly exclude cursor\n limit?: number;\n }\n | {\n filters: Api.EventFilter[];\n cursor: string;\n startLedger?: never; // explicitly exclude startLedger\n endLedger?: never; // explicitly exclude endLedger\n limit?: number;\n };\n\n export interface GetEventsResponse extends RetentionState {\n events: EventResponse[];\n cursor: string;\n }\n\n export interface EventResponse extends BaseEventResponse {\n contractId?: Contract;\n topic: xdr.ScVal[];\n value: xdr.ScVal;\n }\n\n export interface RawGetEventsResponse extends RetentionState {\n events: RawEventResponse[];\n cursor: string;\n }\n\n interface BaseEventResponse {\n id: string;\n type: EventType;\n ledger: number;\n ledgerClosedAt: string;\n transactionIndex: number;\n operationIndex: number;\n inSuccessfulContractCall: boolean;\n txHash: string;\n }\n\n export interface RawEventResponse extends BaseEventResponse {\n contractId: string;\n topic?: string[];\n value: string;\n }\n\n interface RawLedgerEntryChange {\n type: number;\n /** This is LedgerKey in base64 */\n key: string;\n /** This is xdr.LedgerEntry in base64 */\n before: string | null;\n /** This is xdr.LedgerEntry in base64 */\n after: string | null;\n }\n\n export interface LedgerEntryChange {\n type: number;\n key: xdr.LedgerKey;\n before: xdr.LedgerEntry | null;\n after: xdr.LedgerEntry | null;\n }\n\n export type SendTransactionStatus =\n | \"PENDING\"\n | \"DUPLICATE\"\n | \"TRY_AGAIN_LATER\"\n | \"ERROR\";\n\n export interface SendTransactionResponse extends BaseSendTransactionResponse {\n errorResult?: xdr.TransactionResult;\n diagnosticEvents?: xdr.DiagnosticEvent[];\n }\n\n export interface RawSendTransactionResponse extends BaseSendTransactionResponse {\n /**\n * This is a base64-encoded instance of {@link xdr.TransactionResult}, set\n * only when `status` is `\"ERROR\"`.\n *\n * It contains details on why the network rejected the transaction.\n */\n errorResultXdr?: string;\n /**\n * This is a base64-encoded instance of an array of\n * {@link xdr.DiagnosticEvent}s, set only when `status` is `\"ERROR\"` and\n * diagnostic events are enabled on the server.\n */\n diagnosticEventsXdr?: string[];\n }\n\n export interface BaseSendTransactionResponse {\n status: SendTransactionStatus;\n hash: string;\n latestLedger: number;\n latestLedgerCloseTime: number;\n }\n\n export interface SimulateHostFunctionResult {\n auth: xdr.SorobanAuthorizationEntry[];\n retval: xdr.ScVal;\n }\n\n export type SimulationAuthMode =\n | \"enforce\"\n | \"record\"\n | \"record_allow_nonroot\";\n\n /**\n * Simplifies {@link RawSimulateTransactionResponse} into separate interfaces\n * based on status:\n * - on success, this includes all fields, though `result` is only present\n * if an invocation was simulated (since otherwise there's nothing to\n * \"resultify\")\n * - if there was an expiration error, this includes error and restoration\n * fields\n * - for all other errors, this only includes error fields\n *\n * @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/simulateTransaction\n */\n export type SimulateTransactionResponse =\n | SimulateTransactionSuccessResponse\n | SimulateTransactionRestoreResponse\n | SimulateTransactionErrorResponse;\n\n export interface BaseSimulateTransactionResponse {\n /** always present: the JSON-RPC request ID */\n id: string;\n\n /** always present: the LCL known to the server when responding */\n latestLedger: number;\n\n /**\n * The field is always present, but may be empty in cases where:\n * - you didn't simulate an invocation or\n * - there were no events\n */\n events: xdr.DiagnosticEvent[];\n\n /** a private field to mark the schema as parsed */\n _parsed: boolean;\n }\n\n /** Includes simplified fields only present on success. */\n export interface SimulateTransactionSuccessResponse extends BaseSimulateTransactionResponse {\n transactionData: SorobanDataBuilder;\n minResourceFee: string;\n\n /** present only for invocation simulation */\n result?: SimulateHostFunctionResult;\n\n /** State Difference information */\n stateChanges?: LedgerEntryChange[];\n }\n\n /** Includes details about why the simulation failed */\n export interface SimulateTransactionErrorResponse extends BaseSimulateTransactionResponse {\n error: string;\n events: xdr.DiagnosticEvent[];\n }\n\n export interface SimulateTransactionRestoreResponse extends SimulateTransactionSuccessResponse {\n result: SimulateHostFunctionResult; // not optional now\n\n /**\n * Indicates that a restoration is necessary prior to submission.\n *\n * In other words, seeing a restoration preamble means that your invocation\n * was executed AS IF the required ledger entries were present, and this\n * field includes information about what you need to restore for the\n * simulation to succeed.\n */\n restorePreamble: {\n minResourceFee: string;\n transactionData: SorobanDataBuilder;\n };\n }\n\n /**\n * Checks if a simulation response indicates an error.\n * @param sim - The simulation response to check.\n * @returns True if the response indicates an error, false otherwise.\n */\n export function isSimulationError(\n sim: SimulateTransactionResponse,\n ): sim is SimulateTransactionErrorResponse {\n return \"error\" in sim;\n }\n\n /**\n * Checks if a simulation response indicates success.\n * @param sim - The simulation response to check.\n * @returns True if the response indicates success, false otherwise.\n */\n export function isSimulationSuccess(\n sim: SimulateTransactionResponse,\n ): sim is SimulateTransactionSuccessResponse {\n return \"transactionData\" in sim;\n }\n\n /**\n * Checks if a simulation response indicates that a restoration is needed.\n * @param sim - The simulation response to check.\n * @returns True if the response indicates a restoration is needed, false otherwise.\n */\n export function isSimulationRestore(\n sim: SimulateTransactionResponse,\n ): sim is SimulateTransactionRestoreResponse {\n return (\n isSimulationSuccess(sim) &&\n \"restorePreamble\" in sim &&\n !!sim.restorePreamble.transactionData\n );\n }\n\n /**\n * Checks if a simulation response is in raw (unparsed) form.\n * @param sim - The simulation response to check.\n * @returns True if the response is raw, false otherwise.\n */\n export function isSimulationRaw(\n sim: Api.SimulateTransactionResponse | Api.RawSimulateTransactionResponse,\n ): sim is Api.RawSimulateTransactionResponse {\n return !(sim as Api.SimulateTransactionResponse)._parsed;\n }\n\n interface RawSimulateHostFunctionResult {\n // each string is SorobanAuthorizationEntry XDR in base64\n auth?: string[];\n // invocation return value: the ScVal in base64\n xdr: string;\n }\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/simulateTransaction */\n export interface RawSimulateTransactionResponse {\n id: string;\n latestLedger: number;\n error?: string;\n /** This is an xdr.SorobanTransactionData in base64 */\n transactionData?: string;\n /** These are xdr.DiagnosticEvents in base64 */\n events?: string[];\n minResourceFee?: string;\n /**\n * This will only contain a single element if present, because only a single\n * invokeHostFunctionOperation is supported per transaction.\n * */\n results?: RawSimulateHostFunctionResult[];\n /** Present if succeeded but has expired ledger entries */\n restorePreamble?: {\n minResourceFee: string;\n transactionData: string;\n };\n\n /** State difference information */\n stateChanges?: RawLedgerEntryChange[];\n }\n\n export interface GetVersionInfoResponse {\n version: string;\n commitHash: string;\n buildTimestamp: string;\n captiveCoreVersion: string;\n protocolVersion: number; // uint32\n\n /// @deprecated\n commit_hash: string;\n /// @deprecated\n build_timestamp: string;\n /// @deprecated\n captive_core_version: string;\n /// @deprecated\n protocol_version: number; // uint32\n }\n\n export interface GetFeeStatsResponse {\n sorobanInclusionFee: FeeDistribution;\n inclusionFee: FeeDistribution;\n latestLedger: number; // uint32\n }\n\n interface FeeDistribution {\n max: string; // uint64\n min: string; // uint64\n mode: string; // uint64\n p10: string; // uint64\n p20: string; // uint64\n p30: string; // uint64\n p40: string; // uint64\n p50: string; // uint64\n p60: string; // uint64\n p70: string; // uint64\n p80: string; // uint64\n p90: string; // uint64\n p95: string; // uint64\n p99: string; // uint64\n\n transactionCount: string; // uint32\n ledgerCount: number; // uint32\n }\n\n export interface BalanceResponse {\n latestLedger: number;\n /** present only on success, otherwise request malformed or no balance */\n balanceEntry?: {\n /** a 64-bit integer for trustlines, 128-bit value for contracts */\n amount: string;\n authorized: boolean;\n clawback: boolean;\n authorizedToMaintainLiabilities?: boolean; // only present for trustlines\n /** @deprecated Please use `authorizedToMaintainLiabilities` instead */\n revocable?: boolean;\n lastModifiedLedgerSeq?: number;\n liveUntilLedgerSeq?: number;\n };\n }\n\n /**\n * Request parameters for fetching a sequential list of ledgers.\n *\n * This type supports two distinct pagination modes that are mutually exclusive:\n * - **Ledger-based pagination**: Use `startLedger` to begin fetching from a specific ledger sequence\n * - **Cursor-based pagination**: Use `cursor` to continue from a previous response's pagination token\n *\n * @example\n * ```ts\n * // Ledger-based pagination - start from specific ledger\n * const ledgerRequest: GetLedgersRequest = {\n * startLedger: 36233,\n * pagination: {\n * limit: 10\n * }\n * };\n * ```\n *\n * @example\n * ```ts\n * // Cursor-based pagination - continue from previous response\n * const cursorRequest: GetLedgersRequest = {\n * pagination: {\n * cursor: \"36234\",\n * limit: 5\n * }\n * };\n * ```\n *\n * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLedgers | getLedgers API reference}\n */\n export type GetLedgersRequest =\n | {\n /**\n * Ledger sequence number to start fetching from (inclusive).\n * Must be omitted if cursor is provided. Cannot be less than the oldest ledger or greater\n * than the latest ledger stored on the RPC node.\n */\n startLedger: number;\n /** Pagination configuration for the request. */\n pagination?: {\n cursor?: never;\n /**\n * Maximum number of ledgers to return per page.\n * Valid range: 1-10000. Defaults to 100 if not specified.\n */\n limit?: number;\n };\n }\n | {\n startLedger?: never;\n /** Pagination configuration for the request. */\n pagination: {\n /**\n * Page cursor for continuing pagination from a previous\n * response. Must be omitted if startLedger is provided.\n */\n cursor: string;\n /**\n * Maximum number of ledgers to return per page.\n * Valid range: 1-10000. Defaults to 100 if not specified.\n */\n limit?: number;\n };\n };\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLedgers */\n export interface GetLedgersResponse {\n ledgers: LedgerResponse[];\n latestLedger: number;\n latestLedgerCloseTime: number;\n oldestLedger: number;\n oldestLedgerCloseTime: number;\n cursor: string;\n }\n\n export interface RawGetLedgersResponse {\n ledgers: RawLedgerResponse[];\n latestLedger: number;\n latestLedgerCloseTime: number;\n oldestLedger: number;\n oldestLedgerCloseTime: number;\n cursor: string;\n }\n\n export interface LedgerResponse {\n hash: string;\n sequence: number;\n ledgerCloseTime: string;\n headerXdr: xdr.LedgerHeaderHistoryEntry;\n metadataXdr: xdr.LedgerCloseMeta;\n }\n\n export interface RawLedgerResponse {\n hash: string;\n sequence: number;\n ledgerCloseTime: string;\n /** a base-64 encoded {@link xdr.LedgerHeaderHistoryEntry} instance */\n headerXdr: string;\n /** a base-64 encoded {@link xdr.LedgerCloseMeta} instance */\n metadataXdr: string;\n }\n}\n"],"names":["Api","GetTransactionStatus"],"mappings":";;AAGiBA;AAAA,CAAV,CAAUA,IAAAA,KAAV;AAoEE,EAAA,CAAA,CAAKC,qBAAAA,KAAL;AACL,IAAAA,sBAAA,SAAA,CAAA,GAAU,SAAA;AACV,IAAAA,sBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,IAAAA,sBAAA,QAAA,CAAA,GAAS,QAAA;AAAA,EAAA,CAAA,EAHCD,IAAAA,CAAA,oBAAA,KAAAA,IAAAA,CAAA,oBAAA,GAAA,EAAA,CAAA,CAAA;AA4YL,EAAA,SAAS,kBACd,GAAA,EACyC;AACzC,IAAA,OAAO,OAAA,IAAW,GAAA;AAAA,EACpB;AAJO,EAAAA,IAAAA,CAAS,iBAAA,GAAA,iBAAA;AAWT,EAAA,SAAS,oBACd,GAAA,EAC2C;AAC3C,IAAA,OAAO,iBAAA,IAAqB,GAAA;AAAA,EAC9B;AAJO,EAAAA,IAAAA,CAAS,mBAAA,GAAA,mBAAA;AAWT,EAAA,SAAS,oBACd,GAAA,EAC2C;AAC3C,IAAA,OACE,mBAAA,CAAoB,GAAG,CAAA,IACvB,iBAAA,IAAqB,OACrB,CAAC,CAAC,IAAI,eAAA,CAAgB,eAAA;AAAA,EAE1B;AARO,EAAAA,IAAAA,CAAS,mBAAA,GAAA,mBAAA;AAeT,EAAA,SAAS,gBACd,GAAA,EAC2C;AAC3C,IAAA,OAAO,CAAE,GAAA,CAAwC,OAAA;AAAA,EACnD;AAJO,EAAAA,IAAAA,CAAS,eAAA,GAAA,eAAA;AAAA,CAAA,EArfDA,WAAA,KAAAA,WAAA,GAAA,EAAA,CAAA,CAAA;;"}
1
+ {"version":3,"file":"api.js","sources":["../../../src/rpc/api.ts"],"sourcesContent":["import { Contract, SorobanDataBuilder, xdr } from \"../base/index.js\";\n\n/* tslint:disable-next-line:no-namespace */\nexport namespace Api {\n export interface GetHealthResponse {\n latestLedger: number;\n ledgerRetentionWindow: number;\n oldestLedger: number;\n status: \"healthy\";\n }\n\n export interface LedgerEntryResult {\n lastModifiedLedgerSeq?: number;\n key: xdr.LedgerKey;\n val: xdr.LedgerEntryData;\n liveUntilLedgerSeq?: number;\n }\n\n export interface RawLedgerEntryResult {\n lastModifiedLedgerSeq?: number;\n /** a base-64 encoded {@link xdr.LedgerKey} instance */\n key: string;\n /** a base-64 encoded {@link xdr.LedgerEntryData} instance */\n xdr: string;\n /**\n * optional, a future ledger number upon which this entry will expire\n * based on https://github.com/stellar/soroban-tools/issues/1010\n */\n liveUntilLedgerSeq?: number;\n }\n\n /** An XDR-parsed version of {@link RawLedgerEntryResult} */\n export interface GetLedgerEntriesResponse {\n entries: LedgerEntryResult[];\n latestLedger: number;\n }\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLedgerEntries */\n export interface RawGetLedgerEntriesResponse {\n entries?: RawLedgerEntryResult[];\n latestLedger: number;\n }\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getNetwork */\n export interface GetNetworkResponse {\n friendbotUrl?: string;\n passphrase: string;\n protocolVersion: string;\n }\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLatestLedger */\n export interface GetLatestLedgerResponse {\n id: string;\n sequence: number;\n protocolVersion: string;\n closeTime: string;\n headerXdr: xdr.LedgerHeader;\n metadataXdr: xdr.LedgerCloseMeta;\n }\n\n export interface RawGetLatestLedgerResponse {\n id: string;\n sequence: number;\n protocolVersion: string;\n closeTime: string;\n /** a base-64 encoded {@link xdr.LedgerHeader} instance */\n headerXdr: string;\n /** a base-64 encoded {@link xdr.LedgerCloseMeta} instance */\n metadataXdr: string;\n }\n\n export enum GetTransactionStatus {\n SUCCESS = \"SUCCESS\",\n NOT_FOUND = \"NOT_FOUND\",\n FAILED = \"FAILED\",\n }\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getTransaction */\n export type GetTransactionResponse =\n | GetSuccessfulTransactionResponse\n | GetFailedTransactionResponse\n | GetMissingTransactionResponse;\n\n interface GetAnyTransactionResponse {\n status: GetTransactionStatus;\n txHash: string;\n latestLedger: number;\n latestLedgerCloseTime: number;\n oldestLedger: number;\n oldestLedgerCloseTime: number;\n }\n\n export interface GetMissingTransactionResponse extends GetAnyTransactionResponse {\n status: GetTransactionStatus.NOT_FOUND;\n }\n\n export interface GetFailedTransactionResponse extends GetAnyTransactionResponse {\n status: GetTransactionStatus.FAILED;\n\n ledger: number;\n createdAt: number;\n applicationOrder: number;\n feeBump: boolean;\n envelopeXdr: xdr.TransactionEnvelope;\n resultXdr: xdr.TransactionResult;\n resultMetaXdr: xdr.TransactionMeta;\n diagnosticEventsXdr?: xdr.DiagnosticEvent[];\n events: TransactionEvents;\n }\n\n export interface GetSuccessfulTransactionResponse extends GetAnyTransactionResponse {\n status: GetTransactionStatus.SUCCESS;\n\n ledger: number;\n createdAt: number;\n applicationOrder: number;\n feeBump: boolean;\n envelopeXdr: xdr.TransactionEnvelope;\n resultXdr: xdr.TransactionResult;\n resultMetaXdr: xdr.TransactionMeta;\n diagnosticEventsXdr?: xdr.DiagnosticEvent[];\n\n returnValue?: xdr.ScVal; // present iff resultMeta is a v3|v4\n events: TransactionEvents;\n }\n\n export interface RawGetTransactionResponse {\n status: GetTransactionStatus;\n latestLedger: number;\n latestLedgerCloseTime: number;\n oldestLedger: number;\n oldestLedgerCloseTime: number;\n txHash: string;\n\n // the fields below are set if status is SUCCESS\n applicationOrder?: number;\n feeBump?: boolean;\n ledger?: number;\n createdAt?: number;\n\n envelopeXdr?: string;\n resultXdr?: string;\n resultMetaXdr?: string;\n diagnosticEventsXdr?: string[];\n\n events?: RawTransactionEvents;\n }\n\n export type GetTransactionsRequest =\n | {\n startLedger: number;\n pagination?: {\n cursor?: never;\n limit?: number;\n };\n }\n | {\n startLedger?: never;\n pagination: {\n cursor: string;\n limit?: number;\n };\n };\n\n export interface RawTransactionEvents {\n transactionEventsXdr?: string[];\n contractEventsXdr?: string[][];\n }\n\n export interface RawTransactionInfo {\n status: GetTransactionStatus;\n ledger: number;\n createdAt: number;\n applicationOrder: number;\n feeBump: boolean;\n txHash: string;\n\n envelopeXdr?: string;\n resultXdr?: string;\n resultMetaXdr?: string;\n diagnosticEventsXdr?: string[];\n\n events?: RawTransactionEvents;\n }\n\n export interface TransactionEvents {\n transactionEventsXdr: xdr.TransactionEvent[];\n contractEventsXdr: xdr.ContractEvent[][];\n }\n\n export interface TransactionInfo {\n status: GetTransactionStatus;\n ledger: number;\n createdAt: number;\n applicationOrder: number;\n feeBump: boolean;\n txHash: string;\n\n envelopeXdr: xdr.TransactionEnvelope;\n resultXdr: xdr.TransactionResult;\n resultMetaXdr: xdr.TransactionMeta;\n returnValue?: xdr.ScVal;\n diagnosticEventsXdr?: xdr.DiagnosticEvent[];\n\n events: TransactionEvents;\n }\n\n export interface GetTransactionsResponse {\n transactions: TransactionInfo[];\n latestLedger: number;\n latestLedgerCloseTimestamp: number;\n oldestLedger: number;\n oldestLedgerCloseTimestamp: number;\n cursor: string;\n }\n\n export interface RawGetTransactionsResponse {\n transactions: RawTransactionInfo[] | null;\n latestLedger: number;\n latestLedgerCloseTimestamp: number;\n oldestLedger: number;\n oldestLedgerCloseTimestamp: number;\n cursor: string;\n }\n\n export type EventType = \"contract\" | \"system\";\n\n export interface EventFilter {\n type?: EventType;\n contractIds?: string[];\n topics?: string[][];\n }\n\n interface RetentionState {\n latestLedger: number;\n oldestLedger: number;\n latestLedgerCloseTime: string;\n oldestLedgerCloseTime: string;\n }\n\n /**\n * Request parameters for fetching events from the Digital World network.\n *\n * **Important**: This type enforces mutually exclusive pagination modes:\n * - **Ledger range mode**: Use `startLedger` and `endLedger` (cursor must be omitted)\n * - **Cursor pagination mode**: Use `cursor` (startLedger and endLedger must be omitted)\n *\n * @example\n * ```ts\n * // ✅ Correct: Ledger range mode\n * const rangeRequest: GetEventsRequest = {\n * filters: [],\n * startLedger: 1000,\n * endLedger: 2000,\n * limit: 100\n * };\n * ```\n *\n * @example\n * ```ts\n * // ✅ Correct: Cursor pagination mode\n * const cursorRequest: GetEventsRequest = {\n * filters: [],\n * cursor: \"some-cursor-value\",\n * limit: 100\n * };\n * ```\n *\n * @example\n * ```ts\n * // ❌ Invalid: Cannot mix cursor with ledger range\n * const invalidRequest = {\n * filters: [],\n * startLedger: 1000, // ❌ Cannot use with cursor\n * endLedger: 2000, // ❌ Cannot use with cursor\n * cursor: \"cursor\", // ❌ Cannot use with ledger range\n * limit: 100\n * };\n * ```\n *\n * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getEvents | getEvents API reference}\n */\n export type GetEventsRequest =\n | {\n filters: Api.EventFilter[];\n startLedger: number;\n endLedger?: number;\n cursor?: never; // explicitly exclude cursor\n limit?: number;\n }\n | {\n filters: Api.EventFilter[];\n cursor: string;\n startLedger?: never; // explicitly exclude startLedger\n endLedger?: never; // explicitly exclude endLedger\n limit?: number;\n };\n\n export interface GetEventsResponse extends RetentionState {\n events: EventResponse[];\n cursor: string;\n }\n\n export interface EventResponse extends BaseEventResponse {\n contractId?: Contract;\n topic: xdr.ScVal[];\n value: xdr.ScVal;\n }\n\n export interface RawGetEventsResponse extends RetentionState {\n events: RawEventResponse[];\n cursor: string;\n }\n\n interface BaseEventResponse {\n id: string;\n type: EventType;\n ledger: number;\n ledgerClosedAt: string;\n transactionIndex: number;\n operationIndex: number;\n inSuccessfulContractCall: boolean;\n txHash: string;\n }\n\n export interface RawEventResponse extends BaseEventResponse {\n contractId: string;\n topic?: string[];\n value: string;\n }\n\n interface RawLedgerEntryChange {\n type: number;\n /** This is LedgerKey in base64 */\n key: string;\n /** This is xdr.LedgerEntry in base64 */\n before: string | null;\n /** This is xdr.LedgerEntry in base64 */\n after: string | null;\n }\n\n export interface LedgerEntryChange {\n type: number;\n key: xdr.LedgerKey;\n before: xdr.LedgerEntry | null;\n after: xdr.LedgerEntry | null;\n }\n\n export type SendTransactionStatus =\n | \"PENDING\"\n | \"DUPLICATE\"\n | \"TRY_AGAIN_LATER\"\n | \"ERROR\";\n\n export interface SendTransactionResponse extends BaseSendTransactionResponse {\n errorResult?: xdr.TransactionResult;\n diagnosticEvents?: xdr.DiagnosticEvent[];\n }\n\n export interface RawSendTransactionResponse extends BaseSendTransactionResponse {\n /**\n * This is a base64-encoded instance of {@link xdr.TransactionResult}, set\n * only when `status` is `\"ERROR\"`.\n *\n * It contains details on why the network rejected the transaction.\n */\n errorResultXdr?: string;\n /**\n * This is a base64-encoded instance of an array of\n * {@link xdr.DiagnosticEvent}s, set only when `status` is `\"ERROR\"` and\n * diagnostic events are enabled on the server.\n */\n diagnosticEventsXdr?: string[];\n }\n\n export interface BaseSendTransactionResponse {\n status: SendTransactionStatus;\n hash: string;\n latestLedger: number;\n latestLedgerCloseTime: number;\n }\n\n export interface SimulateHostFunctionResult {\n auth: xdr.SorobanAuthorizationEntry[];\n retval: xdr.ScVal;\n }\n\n export type SimulationAuthMode =\n | \"enforce\"\n | \"record\"\n | \"record_allow_nonroot\";\n\n /**\n * Simplifies {@link RawSimulateTransactionResponse} into separate interfaces\n * based on status:\n * - on success, this includes all fields, though `result` is only present\n * if an invocation was simulated (since otherwise there's nothing to\n * \"resultify\")\n * - if there was an expiration error, this includes error and restoration\n * fields\n * - for all other errors, this only includes error fields\n *\n * @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/simulateTransaction\n */\n export type SimulateTransactionResponse =\n | SimulateTransactionSuccessResponse\n | SimulateTransactionRestoreResponse\n | SimulateTransactionErrorResponse;\n\n export interface BaseSimulateTransactionResponse {\n /** always present: the JSON-RPC request ID */\n id: string;\n\n /** always present: the LCL known to the server when responding */\n latestLedger: number;\n\n /**\n * The field is always present, but may be empty in cases where:\n * - you didn't simulate an invocation or\n * - there were no events\n */\n events: xdr.DiagnosticEvent[];\n\n /** a private field to mark the schema as parsed */\n _parsed: boolean;\n }\n\n /** Includes simplified fields only present on success. */\n export interface SimulateTransactionSuccessResponse extends BaseSimulateTransactionResponse {\n transactionData: SorobanDataBuilder;\n minResourceFee: string;\n\n /** present only for invocation simulation */\n result?: SimulateHostFunctionResult;\n\n /** State Difference information */\n stateChanges?: LedgerEntryChange[];\n }\n\n /** Includes details about why the simulation failed */\n export interface SimulateTransactionErrorResponse extends BaseSimulateTransactionResponse {\n error: string;\n events: xdr.DiagnosticEvent[];\n }\n\n export interface SimulateTransactionRestoreResponse extends SimulateTransactionSuccessResponse {\n result: SimulateHostFunctionResult; // not optional now\n\n /**\n * Indicates that a restoration is necessary prior to submission.\n *\n * In other words, seeing a restoration preamble means that your invocation\n * was executed AS IF the required ledger entries were present, and this\n * field includes information about what you need to restore for the\n * simulation to succeed.\n */\n restorePreamble: {\n minResourceFee: string;\n transactionData: SorobanDataBuilder;\n };\n }\n\n /**\n * Checks if a simulation response indicates an error.\n * @param sim - The simulation response to check.\n * @returns True if the response indicates an error, false otherwise.\n */\n export function isSimulationError(\n sim: SimulateTransactionResponse,\n ): sim is SimulateTransactionErrorResponse {\n return \"error\" in sim;\n }\n\n /**\n * Checks if a simulation response indicates success.\n * @param sim - The simulation response to check.\n * @returns True if the response indicates success, false otherwise.\n */\n export function isSimulationSuccess(\n sim: SimulateTransactionResponse,\n ): sim is SimulateTransactionSuccessResponse {\n return \"transactionData\" in sim;\n }\n\n /**\n * Checks if a simulation response indicates that a restoration is needed.\n * @param sim - The simulation response to check.\n * @returns True if the response indicates a restoration is needed, false otherwise.\n */\n export function isSimulationRestore(\n sim: SimulateTransactionResponse,\n ): sim is SimulateTransactionRestoreResponse {\n return (\n isSimulationSuccess(sim) &&\n \"restorePreamble\" in sim &&\n !!sim.restorePreamble.transactionData\n );\n }\n\n /**\n * Checks if a simulation response is in raw (unparsed) form.\n * @param sim - The simulation response to check.\n * @returns True if the response is raw, false otherwise.\n */\n export function isSimulationRaw(\n sim: Api.SimulateTransactionResponse | Api.RawSimulateTransactionResponse,\n ): sim is Api.RawSimulateTransactionResponse {\n return !(sim as Api.SimulateTransactionResponse)._parsed;\n }\n\n interface RawSimulateHostFunctionResult {\n // each string is SorobanAuthorizationEntry XDR in base64\n auth?: string[];\n // invocation return value: the ScVal in base64\n xdr: string;\n }\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/simulateTransaction */\n export interface RawSimulateTransactionResponse {\n id: string;\n latestLedger: number;\n error?: string;\n /** This is an xdr.SorobanTransactionData in base64 */\n transactionData?: string;\n /** These are xdr.DiagnosticEvents in base64 */\n events?: string[];\n minResourceFee?: string;\n /**\n * This will only contain a single element if present, because only a single\n * invokeHostFunctionOperation is supported per transaction.\n * */\n results?: RawSimulateHostFunctionResult[];\n /** Present if succeeded but has expired ledger entries */\n restorePreamble?: {\n minResourceFee: string;\n transactionData: string;\n };\n\n /** State difference information */\n stateChanges?: RawLedgerEntryChange[];\n }\n\n export interface GetVersionInfoResponse {\n version: string;\n commitHash: string;\n buildTimestamp: string;\n captiveCoreVersion: string;\n protocolVersion: number; // uint32\n\n /// @deprecated\n commit_hash: string;\n /// @deprecated\n build_timestamp: string;\n /// @deprecated\n captive_core_version: string;\n /// @deprecated\n protocol_version: number; // uint32\n }\n\n export interface GetFeeStatsResponse {\n sorobanInclusionFee: FeeDistribution;\n inclusionFee: FeeDistribution;\n latestLedger: number; // uint32\n }\n\n interface FeeDistribution {\n max: string; // uint64\n min: string; // uint64\n mode: string; // uint64\n p10: string; // uint64\n p20: string; // uint64\n p30: string; // uint64\n p40: string; // uint64\n p50: string; // uint64\n p60: string; // uint64\n p70: string; // uint64\n p80: string; // uint64\n p90: string; // uint64\n p95: string; // uint64\n p99: string; // uint64\n\n transactionCount: string; // uint32\n ledgerCount: number; // uint32\n }\n\n export interface BalanceResponse {\n latestLedger: number;\n /** present only on success, otherwise request malformed or no balance */\n balanceEntry?: {\n /** a 64-bit integer for trustlines, 128-bit value for contracts */\n amount: string;\n authorized: boolean;\n clawback: boolean;\n authorizedToMaintainLiabilities?: boolean; // only present for trustlines\n /** @deprecated Please use `authorizedToMaintainLiabilities` instead */\n revocable?: boolean;\n lastModifiedLedgerSeq?: number;\n liveUntilLedgerSeq?: number;\n };\n }\n\n /**\n * Request parameters for fetching a sequential list of ledgers.\n *\n * This type supports two distinct pagination modes that are mutually exclusive:\n * - **Ledger-based pagination**: Use `startLedger` to begin fetching from a specific ledger sequence\n * - **Cursor-based pagination**: Use `cursor` to continue from a previous response's pagination token\n *\n * @example\n * ```ts\n * // Ledger-based pagination - start from specific ledger\n * const ledgerRequest: GetLedgersRequest = {\n * startLedger: 36233,\n * pagination: {\n * limit: 10\n * }\n * };\n * ```\n *\n * @example\n * ```ts\n * // Cursor-based pagination - continue from previous response\n * const cursorRequest: GetLedgersRequest = {\n * pagination: {\n * cursor: \"36234\",\n * limit: 5\n * }\n * };\n * ```\n *\n * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLedgers | getLedgers API reference}\n */\n export type GetLedgersRequest =\n | {\n /**\n * Ledger sequence number to start fetching from (inclusive).\n * Must be omitted if cursor is provided. Cannot be less than the oldest ledger or greater\n * than the latest ledger stored on the RPC node.\n */\n startLedger: number;\n /** Pagination configuration for the request. */\n pagination?: {\n cursor?: never;\n /**\n * Maximum number of ledgers to return per page.\n * Valid range: 1-10000. Defaults to 100 if not specified.\n */\n limit?: number;\n };\n }\n | {\n startLedger?: never;\n /** Pagination configuration for the request. */\n pagination: {\n /**\n * Page cursor for continuing pagination from a previous\n * response. Must be omitted if startLedger is provided.\n */\n cursor: string;\n /**\n * Maximum number of ledgers to return per page.\n * Valid range: 1-10000. Defaults to 100 if not specified.\n */\n limit?: number;\n };\n };\n\n /** @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLedgers */\n export interface GetLedgersResponse {\n ledgers: LedgerResponse[];\n latestLedger: number;\n latestLedgerCloseTime: number;\n oldestLedger: number;\n oldestLedgerCloseTime: number;\n cursor: string;\n }\n\n export interface RawGetLedgersResponse {\n ledgers: RawLedgerResponse[];\n latestLedger: number;\n latestLedgerCloseTime: number;\n oldestLedger: number;\n oldestLedgerCloseTime: number;\n cursor: string;\n }\n\n export interface LedgerResponse {\n hash: string;\n sequence: number;\n ledgerCloseTime: string;\n headerXdr: xdr.LedgerHeaderHistoryEntry;\n metadataXdr: xdr.LedgerCloseMeta;\n }\n\n export interface RawLedgerResponse {\n hash: string;\n sequence: number;\n ledgerCloseTime: string;\n /** a base-64 encoded {@link xdr.LedgerHeaderHistoryEntry} instance */\n headerXdr: string;\n /** a base-64 encoded {@link xdr.LedgerCloseMeta} instance */\n metadataXdr: string;\n }\n}\n"],"names":["Api","GetTransactionStatus"],"mappings":";;AAGiBA;AAAA,CAAV,CAAUA,IAAAA,KAAV;AAoEE,EAAA,CAAA,CAAKC,qBAAAA,KAAL;AACL,IAAAA,sBAAA,SAAA,CAAA,GAAU,SAAA;AACV,IAAAA,sBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,IAAAA,sBAAA,QAAA,CAAA,GAAS,QAAA;AAAA,EAAA,CAAA,EAHCD,IAAAA,CAAA,oBAAA,KAAAA,IAAAA,CAAA,oBAAA,GAAA,EAAA,CAAA,CAAA;AA4YL,EAAA,SAAS,kBACd,GAAA,EACyC;AACzC,IAAA,OAAO,OAAA,IAAW,GAAA;AAAA,EACpB;AAJO,EAAAA,IAAAA,CAAS,iBAAA,GAAA,iBAAA;AAWT,EAAA,SAAS,oBACd,GAAA,EAC2C;AAC3C,IAAA,OAAO,iBAAA,IAAqB,GAAA;AAAA,EAC9B;AAJO,EAAAA,IAAAA,CAAS,mBAAA,GAAA,mBAAA;AAWT,EAAA,SAAS,oBACd,GAAA,EAC2C;AAC3C,IAAA,OACE,mBAAA,CAAoB,GAAG,CAAA,IACvB,iBAAA,IAAqB,OACrB,CAAC,CAAC,IAAI,eAAA,CAAgB,eAAA;AAAA,EAE1B;AARO,EAAAA,IAAAA,CAAS,mBAAA,GAAA,mBAAA;AAeT,EAAA,SAAS,gBACd,GAAA,EAC2C;AAC3C,IAAA,OAAO,CAAE,GAAA,CAAwC,OAAA;AAAA,EACnD;AAJO,EAAAA,IAAAA,CAAS,eAAA,GAAA,eAAA;AAAA,CAAA,EArfDA,WAAA,KAAAA,WAAA,GAAA,EAAA,CAAA,CAAA;;"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  var fetchClient = require('../http-client/fetch-client.js');
4
4
 
5
- const version = "16.0.0";
5
+ const version = "16.0.1";
6
6
  function createHttpClient(headers) {
7
7
  return fetchClient.create({
8
8
  headers: {
@@ -90,7 +90,7 @@ class RpcServer {
90
90
  }
91
91
  }
92
92
  /**
93
- * Fetch a minimal set of current info about a Stellar account.
93
+ * Fetch a minimal set of current info about a Digital World account.
94
94
  *
95
95
  * Needed to get the current sequence number for the account so you can build
96
96
  * a successful transaction with {@link TransactionBuilder}.
@@ -114,7 +114,7 @@ class RpcServer {
114
114
  return new account.Account(address, entry.seqNum().toString());
115
115
  }
116
116
  /**
117
- * Fetch the full account entry for a Stellar account.
117
+ * Fetch the full account entry for a Digital World account.
118
118
  *
119
119
  * @param address - The public address of the account to load.
120
120
  * @returns Resolves to the full on-chain account
@@ -145,7 +145,7 @@ class RpcServer {
145
145
  }
146
146
  }
147
147
  /**
148
- * Fetch the full trustline entry for a Stellar account.
148
+ * Fetch the full trustline entry for a Digital World account.
149
149
  *
150
150
  * @param account - The public address of the account whose trustline it is
151
151
  * @param asset - The trustline's asset
@@ -185,7 +185,7 @@ class RpcServer {
185
185
  }
186
186
  }
187
187
  /**
188
- * Fetch the full claimable balance entry for a Stellar account.
188
+ * Fetch the full claimable balance entry for a Digital World account.
189
189
  *
190
190
  * @param id - The strkey (`B...`) or hex (`00000000abcde...`) (both
191
191
  * IDs with and without the 000... version prefix are accepted) of the
@@ -815,15 +815,15 @@ class RpcServer {
815
815
  * @example
816
816
  * ```ts
817
817
  * const contractId = 'CA3D5KRYM6CB7OWQ6TWYRR3Z4T7GNZLKERYNZGGA5SOAOPIFY6YQGAXE';
818
- * const contract = new StellarSdk.Contract(contractId);
818
+ * const contract = new DigitalWorldSdk.Contract(contractId);
819
819
  *
820
820
  * // Right now, this is just the default fee for this example.
821
- * const fee = StellarSdk.BASE_FEE;
822
- * const transaction = new StellarSdk.TransactionBuilder(account, { fee })
821
+ * const fee = DigitalWorldSdk.BASE_FEE;
822
+ * const transaction = new DigitalWorldSdk.TransactionBuilder(account, { fee })
823
823
  * // Uncomment the following line to build transactions for the live network. Be
824
824
  * // sure to also change the horizon hostname.
825
- * //.setNetworkPassphrase(StellarSdk.Networks.PUBLIC)
826
- * .setNetworkPassphrase(StellarSdk.Networks.FUTURENET)
825
+ * //.setNetworkPassphrase(DigitalWorldSdk.Networks.PUBLIC)
826
+ * .setNetworkPassphrase(DigitalWorldSdk.Networks.FUTURENET)
827
827
  * .setTimeout(30) // valid for the next 30s
828
828
  * // Add an operation to call increment() on the contract
829
829
  * .addOperation(contract.call("increment"))
@@ -899,15 +899,15 @@ class RpcServer {
899
899
  * @example
900
900
  * ```ts
901
901
  * const contractId = 'CA3D5KRYM6CB7OWQ6TWYRR3Z4T7GNZLKERYNZGGA5SOAOPIFY6YQGAXE';
902
- * const contract = new StellarSdk.Contract(contractId);
902
+ * const contract = new DigitalWorldSdk.Contract(contractId);
903
903
  *
904
904
  * // Right now, this is just the default fee for this example.
905
- * const fee = StellarSdk.BASE_FEE;
906
- * const transaction = new StellarSdk.TransactionBuilder(account, { fee })
905
+ * const fee = DigitalWorldSdk.BASE_FEE;
906
+ * const transaction = new DigitalWorldSdk.TransactionBuilder(account, { fee })
907
907
  * // Uncomment the following line to build transactions for the live network. Be
908
908
  * // sure to also change the horizon hostname.
909
- * //.setNetworkPassphrase(StellarSdk.Networks.PUBLIC)
910
- * .setNetworkPassphrase(StellarSdk.Networks.FUTURENET)
909
+ * //.setNetworkPassphrase(DigitalWorldSdk.Networks.PUBLIC)
910
+ * .setNetworkPassphrase(DigitalWorldSdk.Networks.FUTURENET)
911
911
  * .setTimeout(30) // valid for the next 30s
912
912
  * // Add an operation to call increment() on the contract
913
913
  * .addOperation(contract.call("increment"))
@@ -918,8 +918,8 @@ class RpcServer {
918
918
  * // Sign this transaction with the secret key
919
919
  * // NOTE: signing is transaction is network specific. Test network transactions
920
920
  * // won't work in the public network. To switch networks, use the Network object
921
- * // as explained above (look for StellarSdk.Network).
922
- * const sourceKeypair = StellarSdk.Keypair.fromSecret(sourceSecretKey);
921
+ * // as explained above (look for DigitalWorldSdk.Network).
922
+ * const sourceKeypair = DigitalWorldSdk.Keypair.fromSecret(sourceSecretKey);
923
923
  * preparedTransaction.sign(sourceKeypair);
924
924
  *
925
925
  * server.sendTransaction(transaction).then(result => {
@@ -937,7 +937,7 @@ class RpcServer {
937
937
  return transaction.assembleTransaction(tx, simResponse).build();
938
938
  }
939
939
  /**
940
- * Submit a real transaction to the Stellar network.
940
+ * Submit a real transaction to the Digital World network.
941
941
  *
942
942
  * Unlike Horizon, RPC does not wait for transaction completion. It
943
943
  * simply validates the transaction and enqueues it. Clients should call
@@ -954,15 +954,15 @@ class RpcServer {
954
954
  * @example
955
955
  * ```ts
956
956
  * const contractId = 'CA3D5KRYM6CB7OWQ6TWYRR3Z4T7GNZLKERYNZGGA5SOAOPIFY6YQGAXE';
957
- * const contract = new StellarSdk.Contract(contractId);
957
+ * const contract = new DigitalWorldSdk.Contract(contractId);
958
958
  *
959
959
  * // Right now, this is just the default fee for this example.
960
- * const fee = StellarSdk.BASE_FEE;
961
- * const transaction = new StellarSdk.TransactionBuilder(account, { fee })
960
+ * const fee = DigitalWorldSdk.BASE_FEE;
961
+ * const transaction = new DigitalWorldSdk.TransactionBuilder(account, { fee })
962
962
  * // Uncomment the following line to build transactions for the live network. Be
963
963
  * // sure to also change the horizon hostname.
964
- * //.setNetworkPassphrase(StellarSdk.Networks.PUBLIC)
965
- * .setNetworkPassphrase(StellarSdk.Networks.FUTURENET)
964
+ * //.setNetworkPassphrase(DigitalWorldSdk.Networks.PUBLIC)
965
+ * .setNetworkPassphrase(DigitalWorldSdk.Networks.FUTURENET)
966
966
  * .setTimeout(30) // valid for the next 30s
967
967
  * // Add an operation to call increment() on the contract
968
968
  * .addOperation(contract.call("increment"))
@@ -971,8 +971,8 @@ class RpcServer {
971
971
  * // Sign this transaction with the secret key
972
972
  * // NOTE: signing is transaction is network specific. Test network transactions
973
973
  * // won't work in the public network. To switch networks, use the Network object
974
- * // as explained above (look for StellarSdk.Network).
975
- * const sourceKeypair = StellarSdk.Keypair.fromSecret(sourceSecretKey);
974
+ * // as explained above (look for DigitalWorldSdk.Network).
975
+ * const sourceKeypair = DigitalWorldSdk.Keypair.fromSecret(sourceSecretKey);
976
976
  * transaction.sign(sourceKeypair);
977
977
  *
978
978
  * server.sendTransaction(transaction).then((result) => {
@@ -1028,6 +1028,11 @@ class RpcServer {
1028
1028
  */
1029
1029
  async requestAirdrop(address, faucetUrl) {
1030
1030
  const account$1 = typeof address === "string" ? address : address.accountId();
1031
+ if (!strkey.StrKey.isValidEd25519PublicKey(account$1) && !strkey.StrKey.isValidContract(account$1)) {
1032
+ throw new Error(
1033
+ `Invalid address: ${account$1}. Expected a Digital World account (G...) or contract (C...) address.`
1034
+ );
1035
+ }
1031
1036
  faucetUrl = faucetUrl || (await this.getNetwork()).friendbotUrl;
1032
1037
  if (!faucetUrl) {
1033
1038
  throw new Error("No faucet URL configured for current network");
@@ -1065,10 +1070,10 @@ class RpcServer {
1065
1070
  *
1066
1071
  * This method supports both account (G...) and contract (C...) addresses.
1067
1072
  *
1068
- * @param address - The address to fund. Can be either a Stellar
1073
+ * @param address - The address to fund. Can be either a Digital World
1069
1074
  * account (G...) or contract (C...) address.
1070
1075
  * @param faucetUrl - (optional) Optionally, an explicit faucet URL
1071
- * (by default: this calls the Stellar RPC
1076
+ * (by default: this calls the Digital World RPC
1072
1077
  * {@link rpc.Server.getNetwork | getNetwork} method to try to
1073
1078
  * discover this network's faucet url).
1074
1079
  * @returns The transaction
@@ -1095,7 +1100,7 @@ class RpcServer {
1095
1100
  async fundAddress(address, faucetUrl) {
1096
1101
  if (!strkey.StrKey.isValidEd25519PublicKey(address) && !strkey.StrKey.isValidContract(address)) {
1097
1102
  throw new Error(
1098
- `Invalid address: ${address}. Expected a Stellar account (G...) or contract (C...) address.`
1103
+ `Invalid address: ${address}. Expected a Digital World account (G...) or contract (C...) address.`
1099
1104
  );
1100
1105
  }
1101
1106
  faucetUrl = faucetUrl || (await this.getNetwork()).friendbotUrl;