{"owner":"FuelLabs","repo":"fuels-ts","hasSpec":true,"specFile":"packages/account/src/providers/fuel-core-schema.graphql","branch":"HEAD","format":"graphql","version":"Unknown","title":"fuels-ts","description":"","endpoints":[],"spec":"\"\"\"\nIndicates that an Input Object is a OneOf Input Object (and thus requires\n                        exactly one of its field be provided)\n\"\"\"\ndirective @oneOf on INPUT_OBJECT\n\n\"\"\"\nProvides a scalar specification URL for specifying the behavior of custom scalar types.\n\"\"\"\ndirective @specifiedBy(\n  \"\"\"\n  URL that specifies the behavior of this scalar.\n  \"\"\"\n  url: String!\n) on SCALAR\n\ninput Account {\n  address: Address\n  predicate: Predicate\n}\n\nscalar Address\n\ntype AssembleTransactionResult {\n  transaction: Transaction!\n  status: DryRunTransactionStatus!\n  gasPrice: U64!\n}\n\nscalar AssetId\n\ntype AssetInfoDetails {\n  contractId: ContractId!\n  subId: SubId!\n  totalSupply: U128!\n}\n\ntype Balance {\n  owner: Address!\n  amount: U64!\n  amountU128: U128!\n  assetId: AssetId!\n}\n\ntype BalanceConnection {\n  \"\"\"\n  Information to aid in pagination.\n  \"\"\"\n  pageInfo: PageInfo!\n\n  \"\"\"\n  A list of edges.\n  \"\"\"\n  edges: [BalanceEdge!]!\n\n  \"\"\"\n  A list of nodes.\n  \"\"\"\n  nodes: [Balance!]!\n}\n\n\"\"\"\nAn edge in a connection.\n\"\"\"\ntype BalanceEdge {\n  \"\"\"\n  The item at the end of the edge\n  \"\"\"\n  node: Balance!\n\n  \"\"\"\n  A cursor for use in pagination\n  \"\"\"\n  cursor: String!\n}\n\ninput BalanceFilterInput {\n  \"\"\"\n  Filter coins based on the `owner` field\n  \"\"\"\n  owner: Address!\n}\n\ntype Blob {\n  id: BlobId!\n  bytecode: HexString!\n}\n\nscalar BlobId\n\ntype Block {\n  version: BlockVersion!\n  id: BlockId!\n  height: U32!\n  header: Header!\n  consensus: Consensus!\n  transactionIds: [TransactionId!]!\n  transactions: [Transaction!]!\n}\n\ntype BlockConnection {\n  \"\"\"\n  Information to aid in pagination.\n  \"\"\"\n  pageInfo: PageInfo!\n\n  \"\"\"\n  A list of edges.\n  \"\"\"\n  edges: [BlockEdge!]!\n\n  \"\"\"\n  A list of nodes.\n  \"\"\"\n  nodes: [Block!]!\n}\n\n\"\"\"\nAn edge in a connection.\n\"\"\"\ntype BlockEdge {\n  \"\"\"\n  The item at the end of the edge\n  \"\"\"\n  node: Block!\n\n  \"\"\"\n  A cursor for use in pagination\n  \"\"\"\n  cursor: String!\n}\n\nscalar BlockId\n\nenum BlockVersion {\n  V1\n}\n\n\"\"\"\nBreakpoint, defined as a tuple of contract ID and relative PC offset inside it\n\"\"\"\ninput Breakpoint {\n  contract: ContractId!\n  pc: U64!\n}\n\nscalar Bytes32\n\ntype ChainInfo {\n  name: String!\n  latestBlock: Block!\n  daHeight: U64!\n  consensusParameters: ConsensusParameters!\n  gasCosts: GasCosts!\n}\n\ntype ChangeOutput {\n  to: Address!\n  amount: U64!\n  assetId: AssetId!\n}\n\ninput ChangePolicy {\n  \"\"\"\n  Adds `Output::Change` to the transaction if it is not already present.\n  Sending remaining assets to the provided address.\n  \"\"\"\n  change: Address\n\n  \"\"\"\n  Destroys the remaining assets by the transaction for provided address.\n  \"\"\"\n  destroy: Destroy\n}\n\ntype Coin {\n  utxoId: UtxoId!\n  owner: Address!\n  amount: U64!\n  assetId: AssetId!\n\n  \"\"\"\n  TxPointer - the height of the block this coin was created in\n  \"\"\"\n  blockCreated: U32!\n\n  \"\"\"\n  TxPointer - the index of the transaction that created this coin\n  \"\"\"\n  txCreatedIdx: U16!\n}\n\ntype CoinConnection {\n  \"\"\"\n  Information to aid in pagination.\n  \"\"\"\n  pageInfo: PageInfo!\n\n  \"\"\"\n  A list of edges.\n  \"\"\"\n  edges: [CoinEdge!]!\n\n  \"\"\"\n  A list of nodes.\n  \"\"\"\n  nodes: [Coin!]!\n}\n\n\"\"\"\nAn edge in a connection.\n\"\"\"\ntype CoinEdge {\n  \"\"\"\n  The item at the end of the edge\n  \"\"\"\n  node: Coin!\n\n  \"\"\"\n  A cursor for use in pagination\n  \"\"\"\n  cursor: String!\n}\n\ninput CoinFilterInput {\n  \"\"\"\n  Returns coins owned by the `owner`.\n  \"\"\"\n  owner: Address!\n\n  \"\"\"\n  Returns coins only with `asset_id`.\n  \"\"\"\n  assetId: AssetId\n}\n\ntype CoinOutput {\n  to: Address!\n  amount: U64!\n  assetId: AssetId!\n}\n\n\"\"\"\nThe schema analog of the [`coins::CoinType`].\n\"\"\"\nunion CoinType = Coin | MessageCoin\n\nunion Consensus = Genesis | PoAConsensus\n\ntype ConsensusParameters {\n  version: ConsensusParametersVersion!\n  txParams: TxParameters!\n  predicateParams: PredicateParameters!\n  scriptParams: ScriptParameters!\n  contractParams: ContractParameters!\n  feeParams: FeeParameters!\n  baseAssetId: AssetId!\n  blockGasLimit: U64!\n  blockTransactionSizeLimit: U64!\n  chainId: U64!\n  gasCosts: GasCosts!\n  privilegedAddress: Address!\n}\n\ntype ConsensusParametersPurpose {\n  witnessIndex: U16!\n  checksum: Bytes32!\n}\n\nenum ConsensusParametersVersion {\n  V1\n}\n\ntype Contract {\n  id: ContractId!\n  bytecode: HexString!\n  salt: Salt!\n}\n\ntype ContractBalance {\n  contract: ContractId!\n  amount: U64!\n  assetId: AssetId!\n}\n\ntype ContractBalanceConnection {\n  \"\"\"\n  Information to aid in pagination.\n  \"\"\"\n  pageInfo: PageInfo!\n\n  \"\"\"\n  A list of edges.\n  \"\"\"\n  edges: [ContractBalanceEdge!]!\n\n  \"\"\"\n  A list of nodes.\n  \"\"\"\n  nodes: [ContractBalance!]!\n}\n\n\"\"\"\nAn edge in a connection.\n\"\"\"\ntype ContractBalanceEdge {\n  \"\"\"\n  The item at the end of the edge\n  \"\"\"\n  node: ContractBalance!\n\n  \"\"\"\n  A cursor for use in pagination\n  \"\"\"\n  cursor: String!\n}\n\ninput ContractBalanceFilterInput {\n  \"\"\"\n  Filter assets based on the `contractId` field\n  \"\"\"\n  contract: ContractId!\n}\n\ntype ContractCreated {\n  contract: ContractId!\n  stateRoot: Bytes32!\n}\n\nscalar ContractId\n\ntype ContractOutput {\n  inputIndex: U16!\n  balanceRoot: Bytes32!\n  stateRoot: Bytes32!\n}\n\ntype ContractParameters {\n  version: ContractParametersVersion!\n  contractMaxSize: U64!\n  maxStorageSlots: U64!\n}\n\nenum ContractParametersVersion {\n  V1\n}\n\ntype DaCompressedBlock {\n  bytes: HexString!\n}\n\nunion DependentCost = LightOperation | HeavyOperation\n\nenum Destroy {\n  DESTROY\n}\n\ntype DryRunFailureStatus {\n  programState: ProgramState\n  reason: String!\n  receipts: [Receipt!]!\n  totalGas: U64!\n  totalFee: U64!\n}\n\ntype DryRunStorageReads {\n  txStatuses: [DryRunTransactionExecutionStatus!]!\n  storageReads: [StorageReadReplayEvent!]!\n}\n\ntype DryRunSuccessStatus {\n  programState: ProgramState\n  receipts: [Receipt!]!\n  totalGas: U64!\n  totalFee: U64!\n}\n\ntype DryRunTransactionExecutionStatus {\n  id: TransactionId!\n  status: DryRunTransactionStatus!\n  receipts: [Receipt!]!\n}\n\nunion DryRunTransactionStatus = DryRunSuccessStatus | DryRunFailureStatus\n\ntype EstimateGasPrice {\n  gasPrice: U64!\n}\n\ninput ExcludeInput {\n  \"\"\"\n  Utxos to exclude from the selection.\n  \"\"\"\n  utxos: [UtxoId!]!\n\n  \"\"\"\n  Messages to exclude from the selection.\n  \"\"\"\n  messages: [Nonce!]!\n}\n\ntype FailureStatus {\n  transactionId: TransactionId!\n  blockHeight: U32!\n  block: Block!\n  transaction: Transaction!\n  time: Tai64Timestamp!\n  reason: String!\n  programState: ProgramState\n  receipts: [Receipt!]!\n  totalGas: U64!\n  totalFee: U64!\n}\n\ntype FeeParameters {\n  version: FeeParametersVersion!\n  gasPriceFactor: U64!\n  gasPerByte: U64!\n}\n\nenum FeeParametersVersion {\n  V1\n}\n\ntype GasCosts {\n  version: GasCostsVersion!\n  add: U64!\n  addi: U64!\n  aloc: U64!\n  and: U64!\n  andi: U64!\n  bal: U64!\n  bhei: U64!\n  bhsh: U64!\n  burn: U64!\n  cb: U64!\n  cfei: U64!\n  cfsi: U64!\n  div: U64!\n  divi: U64!\n  ecr1: U64!\n  eck1: U64!\n  ed19: U64!\n  eq: U64!\n  exp: U64!\n  expi: U64!\n  flag: U64!\n  gm: U64!\n  gt: U64!\n  gtf: U64!\n  ji: U64!\n  jmp: U64!\n  jne: U64!\n  jnei: U64!\n  jnzi: U64!\n  jmpf: U64!\n  jmpb: U64!\n  jnzf: U64!\n  jnzb: U64!\n  jnef: U64!\n  jneb: U64!\n  lb: U64!\n  log: U64!\n  lt: U64!\n  lw: U64!\n  mint: U64!\n  mlog: U64!\n  modOp: U64!\n  modi: U64!\n  moveOp: U64!\n  movi: U64!\n  mroo: U64!\n  mul: U64!\n  muli: U64!\n  mldv: U64!\n  niop: U64\n  noop: U64!\n  not: U64!\n  or: U64!\n  ori: U64!\n  poph: U64!\n  popl: U64!\n  pshh: U64!\n  pshl: U64!\n  ret: U64!\n  rvrt: U64!\n  sb: U64!\n  sll: U64!\n  slli: U64!\n  srl: U64!\n  srli: U64!\n  srw: U64!\n  sub: U64!\n  subi: U64!\n  sw: U64!\n  sww: U64!\n  time: U64!\n  tr: U64!\n  tro: U64!\n  wdcm: U64!\n  wqcm: U64!\n  wdop: U64!\n  wqop: U64!\n  wdml: U64!\n  wqml: U64!\n  wddv: U64!\n  wqdv: U64!\n  wdmd: U64!\n  wqmd: U64!\n  wdam: U64!\n  wqam: U64!\n  wdmm: U64!\n  wqmm: U64!\n  xor: U64!\n  xori: U64!\n  ecop: U64\n  alocDependentCost: DependentCost!\n  bldd: DependentCost\n  bsiz: DependentCost\n  cfe: DependentCost!\n  cfeiDependentCost: DependentCost!\n  call: DependentCost!\n  ccp: DependentCost!\n  croo: DependentCost!\n  csiz: DependentCost!\n  ed19DependentCost: DependentCost!\n  k256: DependentCost!\n  ldc: DependentCost!\n  logd: DependentCost!\n  mcl: DependentCost!\n  mcli: DependentCost!\n  mcp: DependentCost!\n  mcpi: DependentCost!\n  meq: DependentCost!\n  retd: DependentCost!\n  s256: DependentCost!\n  scwq: DependentCost!\n  smo: DependentCost!\n  srwq: DependentCost!\n  swwq: DependentCost!\n  epar: DependentCost\n  contractRoot: DependentCost!\n  stateRoot: DependentCost!\n  vmInitialization: DependentCost!\n  newStoragePerByte: U64!\n}\n\nenum GasCostsVersion {\n  V1\n}\n\ntype Genesis {\n  \"\"\"\n  The chain configs define what consensus type to use, what settlement layer to use,\n  rules of block validity, etc.\n  \"\"\"\n  chainConfigHash: Bytes32!\n\n  \"\"\"\n  The Binary Merkle Tree root of all genesis coins.\n  \"\"\"\n  coinsRoot: Bytes32!\n\n  \"\"\"\n  The Binary Merkle Tree root of state, balances, contracts code hash of each contract.\n  \"\"\"\n  contractsRoot: Bytes32!\n\n  \"\"\"\n  The Binary Merkle Tree root of all genesis messages.\n  \"\"\"\n  messagesRoot: Bytes32!\n\n  \"\"\"\n  The Binary Merkle Tree root of all processed transaction ids.\n  \"\"\"\n  transactionsRoot: Bytes32!\n}\n\ntype Header {\n  \"\"\"\n  Version of the header\n  \"\"\"\n  version: HeaderVersion!\n\n  \"\"\"\n  Hash of the header\n  \"\"\"\n  id: BlockId!\n\n  \"\"\"\n  The layer 1 height of messages and events to include since the last layer 1 block number.\n  \"\"\"\n  daHeight: U64!\n\n  \"\"\"\n  The version of the consensus parameters used to create this block.\n  \"\"\"\n  consensusParametersVersion: U32!\n\n  \"\"\"\n  The version of the state transition bytecode used to create this block.\n  \"\"\"\n  stateTransitionBytecodeVersion: U32!\n\n  \"\"\"\n  Number of transactions in this block.\n  \"\"\"\n  transactionsCount: U16!\n\n  \"\"\"\n  Number of message receipts in this block.\n  \"\"\"\n  messageReceiptCount: U32!\n\n  \"\"\"\n  Merkle root of transactions.\n  \"\"\"\n  transactionsRoot: Bytes32!\n\n  \"\"\"\n  Merkle root of message receipts in this block.\n  \"\"\"\n  messageOutboxRoot: Bytes32!\n\n  \"\"\"\n  Merkle root of inbox events in this block.\n  \"\"\"\n  eventInboxRoot: Bytes32!\n\n  \"\"\"\n  Fuel block height.\n  \"\"\"\n  height: U32!\n\n  \"\"\"\n  Merkle root of all previous block header hashes.\n  \"\"\"\n  prevRoot: Bytes32!\n\n  \"\"\"\n  The block producer time.\n  \"\"\"\n  time: Tai64Timestamp!\n\n  \"\"\"\n  Hash of the application header.\n  \"\"\"\n  applicationHash: Bytes32!\n\n  \"\"\"\n  Transaction ID Commitment\n  \"\"\"\n  txIdCommitment: Bytes32\n}\n\nenum HeaderVersion {\n  V1\n  V2\n}\n\ntype HeavyOperation {\n  base: U64!\n  gasPerUnit: U64!\n}\n\nscalar HexString\n\ntype IndexationFlags {\n  \"\"\"\n  Is balances indexation enabled\n  \"\"\"\n  balances: Boolean!\n\n  \"\"\"\n  Is coins to spend indexation enabled\n  \"\"\"\n  coinsToSpend: Boolean!\n\n  \"\"\"\n  Is asset metadata indexation enabled\n  \"\"\"\n  assetMetadata: Boolean!\n}\n\nunion Input = InputCoin | InputContract | InputMessage\n\ntype InputCoin {\n  utxoId: UtxoId!\n  owner: Address!\n  amount: U64!\n  assetId: AssetId!\n  txPointer: TxPointer!\n  witnessIndex: U16!\n  predicateGasUsed: U64!\n  predicate: HexString!\n  predicateData: HexString!\n}\n\ntype InputContract {\n  utxoId: UtxoId!\n  balanceRoot: Bytes32!\n  stateRoot: Bytes32!\n  txPointer: TxPointer!\n  contractId: ContractId!\n}\n\ntype InputMessage {\n  sender: Address!\n  recipient: Address!\n  amount: U64!\n  nonce: Nonce!\n  witnessIndex: U16!\n  predicateGasUsed: U64!\n  data: HexString!\n  predicate: HexString!\n  predicateData: HexString!\n}\n\ntype LatestGasPrice {\n  gasPrice: U64!\n  blockHeight: U32!\n}\n\ntype LightOperation {\n  base: U64!\n  unitsPerGas: U64!\n}\n\ntype MerkleProof {\n  proofSet: [Bytes32!]!\n  proofIndex: U64!\n}\n\ntype Message {\n  amount: U64!\n  sender: Address!\n  recipient: Address!\n  nonce: Nonce!\n  data: HexString!\n  daHeight: U64!\n}\n\ntype MessageCoin {\n  sender: Address!\n  recipient: Address!\n  nonce: Nonce!\n  amount: U64!\n  assetId: AssetId!\n  daHeight: U64!\n}\n\ntype MessageConnection {\n  \"\"\"\n  Information to aid in pagination.\n  \"\"\"\n  pageInfo: PageInfo!\n\n  \"\"\"\n  A list of edges.\n  \"\"\"\n  edges: [MessageEdge!]!\n\n  \"\"\"\n  A list of nodes.\n  \"\"\"\n  nodes: [Message!]!\n}\n\n\"\"\"\nAn edge in a connection.\n\"\"\"\ntype MessageEdge {\n  \"\"\"\n  The item at the end of the edge\n  \"\"\"\n  node: Message!\n\n  \"\"\"\n  A cursor for use in pagination\n  \"\"\"\n  cursor: String!\n}\n\ntype MessageProof {\n  messageProof: MerkleProof!\n  blockProof: MerkleProof!\n  messageBlockHeader: Header!\n  commitBlockHeader: Header!\n  sender: Address!\n  recipient: Address!\n  nonce: Nonce!\n  amount: U64!\n  data: HexString!\n}\n\nenum MessageState {\n  UNSPENT\n  SPENT\n  NOT_FOUND\n}\n\ntype MessageStatus {\n  state: MessageState!\n}\n\ntype Mutation {\n  \"\"\"\n  Initialize a new debugger session, returning its ID.\n  A new VM instance is spawned for each session.\n  The session is run in a separate database transaction,\n  on top of the most recent node state.\n  \"\"\"\n  startSession: ID!\n\n  \"\"\"\n  End debugger session.\n  \"\"\"\n  endSession(id: ID!): Boolean!\n\n  \"\"\"\n  Reset the VM instance to the initial state.\n  \"\"\"\n  reset(id: ID!): Boolean!\n\n  \"\"\"\n  Execute a single fuel-asm instruction.\n  \"\"\"\n  execute(id: ID!, op: String!): Boolean!\n\n  \"\"\"\n  Set single-stepping mode for the VM instance.\n  \"\"\"\n  setSingleStepping(id: ID!, enable: Boolean!): Boolean!\n\n  \"\"\"\n  Set a breakpoint for a VM instance.\n  \"\"\"\n  setBreakpoint(id: ID!, breakpoint: Breakpoint!): Boolean!\n\n  \"\"\"\n  Run a single transaction in given session until it\n  hits a breakpoint or completes.\n  \"\"\"\n  startTx(id: ID!, txJson: String!): RunResult!\n\n  \"\"\"\n  Resume execution of the VM instance after a breakpoint.\n  Runs until the next breakpoint or until the transaction completes.\n  \"\"\"\n  continueTx(id: ID!): RunResult!\n\n  \"\"\"\n  Execute a dry-run of multiple transactions using a fork of current state, no changes are committed.\n  \"\"\"\n  dryRun(\n    txs: [HexString!]!\n    utxoValidation: Boolean\n    gasPrice: U64\n    blockHeight: U32\n  ): [DryRunTransactionExecutionStatus!]!\n    @deprecated(\n      reason: \"This doesn't need to be a mutation. Use query of the same name instead.\"\n    )\n\n  \"\"\"\n  Submits transaction to the `TxPool`.\n\n  Returns submitted transaction if the transaction is included in the `TxPool` without problems.\n  \"\"\"\n  submit(tx: HexString!, estimatePredicates: Boolean): Transaction!\n\n  \"\"\"\n  Sequentially produces `blocks_to_produce` blocks. The first block starts with\n  `start_timestamp`. If the block production in the [`crate::service::Config`] is\n  `Trigger::Interval { block_time }`, produces blocks with `block_time ` intervals between\n  them. The `start_timestamp` is the timestamp in seconds.\n  \"\"\"\n  produceBlocks(startTimestamp: Tai64Timestamp, blocksToProduce: U32!): U32!\n}\n\ntype NodeInfo {\n  utxoValidation: Boolean!\n  vmBacktrace: Boolean!\n  maxTx: U64!\n  maxGas: U64!\n  maxSize: U64!\n  maxDepth: U64!\n  nodeVersion: String!\n  indexation: IndexationFlags!\n  txPoolStats: TxPoolStats!\n  peers: [PeerInfo!]!\n}\n\nscalar Nonce\n\nunion Output =\n  | CoinOutput\n  | ContractOutput\n  | ChangeOutput\n  | VariableOutput\n  | ContractCreated\n\n\"\"\"\nA separate `Breakpoint` type to be used as an output, as a single\ntype cannot act as both input and output type in async-graphql\n\"\"\"\ntype OutputBreakpoint {\n  contract: ContractId!\n  pc: U64!\n}\n\n\"\"\"\nInformation about pagination in a connection\n\"\"\"\ntype PageInfo {\n  \"\"\"\n  When paginating backwards, are there more items?\n  \"\"\"\n  hasPreviousPage: Boolean!\n\n  \"\"\"\n  When paginating forwards, are there more items?\n  \"\"\"\n  hasNextPage: Boolean!\n\n  \"\"\"\n  When paginating backwards, the cursor to continue.\n  \"\"\"\n  startCursor: String\n\n  \"\"\"\n  When paginating forwards, the cursor to continue.\n  \"\"\"\n  endCursor: String\n}\n\ntype PeerInfo {\n  \"\"\"\n  The libp2p peer id\n  \"\"\"\n  id: String!\n\n  \"\"\"\n  The advertised multi-addrs that can be used to connect to this peer\n  \"\"\"\n  addresses: [String!]!\n\n  \"\"\"\n  The self-reported version of the client the peer is using\n  \"\"\"\n  clientVersion: String\n\n  \"\"\"\n  The last reported height of the peer\n  \"\"\"\n  blockHeight: U32\n\n  \"\"\"\n  The last heartbeat from this peer in unix epoch time ms\n  \"\"\"\n  lastHeartbeatMs: U64!\n\n  \"\"\"\n  The internal fuel p2p reputation of this peer\n  \"\"\"\n  appScore: Float!\n}\n\ntype PoAConsensus {\n  \"\"\"\n  Gets the signature of the block produced by `PoA` consensus.\n  \"\"\"\n  signature: Signature!\n}\n\ntype Policies {\n  tip: U64\n  witnessLimit: U64\n  maturity: U32\n  maxFee: U64\n}\n\ntype PreconfirmationFailureStatus {\n  reason: String!\n  txPointer: TxPointer!\n  totalGas: U64!\n  totalFee: U64!\n  transactionId: TransactionId!\n  transaction: Transaction\n  receipts: [Receipt!]\n  resolvedOutputs: [ResolvedOutput!]\n}\n\ntype PreconfirmationSuccessStatus {\n  txPointer: TxPointer!\n  totalGas: U64!\n  totalFee: U64!\n  transactionId: TransactionId!\n  transaction: Transaction\n  receipts: [Receipt!]\n  resolvedOutputs: [ResolvedOutput!]\n}\n\ninput Predicate {\n  predicateAddress: Address!\n  predicate: HexString!\n  predicateData: HexString!\n}\n\ntype PredicateParameters {\n  version: PredicateParametersVersion!\n  maxPredicateLength: U64!\n  maxPredicateDataLength: U64!\n  maxGasPerPredicate: U64!\n  maxMessageDataLength: U64!\n}\n\nenum PredicateParametersVersion {\n  V1\n}\n\ntype ProgramState {\n  returnType: ReturnType!\n  data: HexString!\n}\n\ntype Query {\n  assetDetails(\n    \"\"\"\n    ID of the Asset\n    \"\"\"\n    id: AssetId!\n  ): AssetInfoDetails\n\n  \"\"\"\n  Read register value by index.\n  \"\"\"\n  register(id: ID!, register: U32!): U64!\n\n  \"\"\"\n  Read read a range of memory bytes.\n  \"\"\"\n  memory(id: ID!, start: U32!, size: U32!): String!\n  balance(\n    \"\"\"\n    address of the owner\n    \"\"\"\n    owner: Address!\n\n    \"\"\"\n    asset_id of the coin\n    \"\"\"\n    assetId: AssetId!\n  ): Balance!\n  balances(\n    filter: BalanceFilterInput!\n    first: Int\n    after: String\n    last: Int\n    before: String\n  ): BalanceConnection!\n  blob(\n    \"\"\"\n    ID of the Blob\n    \"\"\"\n    id: BlobId!\n  ): Blob\n  block(\n    \"\"\"\n    ID of the block\n    \"\"\"\n    id: BlockId\n\n    \"\"\"\n    Height of the block\n    \"\"\"\n    height: U32\n  ): Block\n  blocks(first: Int, after: String, last: Int, before: String): BlockConnection!\n  chain: ChainInfo!\n  transaction(\n    \"\"\"\n    The ID of the transaction\n    \"\"\"\n    id: TransactionId!\n  ): Transaction\n  transactions(\n    first: Int\n    after: String\n    last: Int\n    before: String\n  ): TransactionConnection!\n  transactionsByOwner(\n    owner: Address!\n    first: Int\n    after: String\n    last: Int\n    before: String\n  ): TransactionConnection!\n\n  \"\"\"\n  Assembles the transaction based on the provided requirements.\n  The return transaction contains:\n  - Input coins to cover `required_balances`\n  - Input coins to cover the fee of the transaction based on the gas price from `block_horizon`\n  - `Change` or `Destroy` outputs for all assets from the inputs\n  - `Variable` outputs in the case they are required during the execution\n  - `Contract` inputs and outputs in the case they are required during the execution\n  - Reserved witness slots for signed coins filled with `64` zeroes\n  - Set script gas limit(unless `script` is empty)\n  - Estimated predicates, if `estimate_predicates == true`\n\n  Returns an error if:\n  - The number of required balances exceeds the maximum number of inputs allowed.\n  - The fee address index is out of bounds.\n  - The same asset has multiple change policies(either the receiver of\n  the change is different, or one of the policies states about the destruction\n  of the token while the other does not). The `Change` output from the transaction\n  also count as a `ChangePolicy`.\n  - The number of excluded coin IDs exceeds the maximum number of inputs allowed.\n  - Required assets have multiple entries.\n  - If accounts don't have sufficient amounts to cover the transaction requirements in assets.\n  - If a constructed transaction breaks the rules defined by consensus parameters.\n  \"\"\"\n  assembleTx(\n    \"\"\"\n    The original transaction that contains application level logic only\n    \"\"\"\n    tx: HexString!\n\n    \"\"\"\n    Number of blocks into the future to estimate the gas price for\n    \"\"\"\n    blockHorizon: U32!\n\n    \"\"\"\n    The list of required balances for the transaction to include as inputs. The\n    list should be created based on the application-required assets. The base\n    asset requirement should not require assets to cover the transaction fee,\n    which will be calculated and added automatically at the end of the assembly process.\n    \"\"\"\n    requiredBalances: [RequiredBalance!]!\n\n    \"\"\"\n    The index from the `required_balances` list that points to the address who\n    pays fee for the transaction. If you only want to cover the fee of\n    transaction, you can set the required balance to 0, set base asset and point\n    to this required address.\n    \"\"\"\n    feeAddressIndex: U16!\n\n    \"\"\"\n    The list of resources to exclude from the selection for the inputs\n    \"\"\"\n    excludeInput: ExcludeInput\n\n    \"\"\"\n    Perform the estimation of the predicates before cover fee of the transaction\n    \"\"\"\n    estimatePredicates: Boolean\n\n    \"\"\"\n    During the phase of the fee calculation, adds `reserve_gas` to the total gas\n    used by the transaction and fetch assets to cover the fee.\n    \"\"\"\n    reserveGas: U64\n  ): AssembleTransactionResult!\n\n  \"\"\"\n  Estimate the predicate gas for the provided transaction\n  \"\"\"\n  estimatePredicates(tx: HexString!): Transaction!\n\n  \"\"\"\n  Execute a dry-run of multiple transactions using a fork of current state, no changes are committed.\n  \"\"\"\n  dryRun(\n    txs: [HexString!]!\n    utxoValidation: Boolean\n    gasPrice: U64\n    blockHeight: U32\n  ): [DryRunTransactionExecutionStatus!]!\n\n  \"\"\"\n  Execute a dry-run of multiple transactions using a fork of current state, no changes are committed.\n  Also records accesses, so the execution can be replicated locally.\n  \"\"\"\n  dryRunRecordStorageReads(\n    txs: [HexString!]!\n    utxoValidation: Boolean\n    gasPrice: U64\n    blockHeight: U32\n  ): DryRunStorageReads!\n\n  \"\"\"\n  Get execution trace for an already-executed block.\n  \"\"\"\n  storageReadReplay(height: U32!): [StorageReadReplayEvent!]!\n\n  \"\"\"\n  Returns true when the GraphQL API is serving requests.\n  \"\"\"\n  health: Boolean!\n\n  \"\"\"\n  Gets the coin by `utxo_id`.\n  \"\"\"\n  coin(\n    \"\"\"\n    The ID of the coin\n    \"\"\"\n    utxoId: UtxoId!\n  ): Coin\n\n  \"\"\"\n  Gets all unspent coins of some `owner` maybe filtered with by `asset_id` per page.\n  \"\"\"\n  coins(\n    filter: CoinFilterInput!\n    first: Int\n    after: String\n    last: Int\n    before: String\n  ): CoinConnection!\n\n  \"\"\"\n  For each `query_per_asset`, get some spendable coins(of asset specified by the query) owned by\n  `owner` that add up at least the query amount. The returned coins can be spent.\n  The number of coins is optimized to prevent dust accumulation.\n\n  The query supports excluding and maximum the number of coins.\n\n  Returns:\n  The list of spendable coins per asset from the query. The length of the result is\n  the same as the length of `query_per_asset`. The ordering of assets and `query_per_asset`\n  is the same.\n  \"\"\"\n  coinsToSpend(\n    \"\"\"\n    The `Address` of the coins owner.\n    \"\"\"\n    owner: Address!\n\n    \"\"\"\n    The list of requested assets` coins with asset ids, `target` amount the user\n    wants to reach, and the `max` number of coins in the selection. Several\n    entries with the same asset id are not allowed. The result can't contain\n    more coins than `max_inputs`.\n    \"\"\"\n    queryPerAsset: [SpendQueryElementInput!]!\n\n    \"\"\"\n    The excluded coins from the selection.\n    \"\"\"\n    excludedIds: ExcludeInput\n  ): [[CoinType!]!]!\n  daCompressedBlock(\n    \"\"\"\n    Height of the block\n    \"\"\"\n    height: U32!\n  ): DaCompressedBlock\n  contract(\n    \"\"\"\n    ID of the Contract\n    \"\"\"\n    id: ContractId!\n  ): Contract\n  contractBalance(contract: ContractId!, asset: AssetId!): ContractBalance!\n  contractBalances(\n    filter: ContractBalanceFilterInput!\n    first: Int\n    after: String\n    last: Int\n    before: String\n  ): ContractBalanceConnection!\n  nodeInfo: NodeInfo!\n  latestGasPrice: LatestGasPrice!\n  estimateGasPrice(\n    \"\"\"\n    Number of blocks into the future to estimate the gas price for\n    \"\"\"\n    blockHorizon: U32\n  ): EstimateGasPrice!\n  message(\n    \"\"\"\n    The Nonce of the message\n    \"\"\"\n    nonce: Nonce!\n  ): Message\n  messages(\n    \"\"\"\n    address of the owner\n    \"\"\"\n    owner: Address\n    first: Int\n    after: String\n    last: Int\n    before: String\n  ): MessageConnection!\n  messageProof(\n    transactionId: TransactionId!\n    nonce: Nonce!\n    commitBlockId: BlockId\n    commitBlockHeight: U32\n  ): MessageProof!\n  messageStatus(nonce: Nonce!): MessageStatus!\n  relayedTransactionStatus(\n    \"\"\"\n    The id of the relayed tx\n    \"\"\"\n    id: RelayedTransactionId!\n  ): RelayedTransactionStatus\n  consensusParameters(version: Int!): ConsensusParameters!\n  stateTransitionBytecodeByVersion(version: Int!): StateTransitionBytecode\n  stateTransitionBytecodeByRoot(root: HexString!): StateTransitionBytecode!\n\n  \"\"\"\n  Get storage slot values for a contract at a specific block height.\n  Use the latest block height if not provided.\n  Requires historical execution config to be enabled.\n  \"\"\"\n  contractSlotValues(\n    contractId: ContractId!\n    blockHeight: U32\n    storageSlots: [Bytes32!]!\n  ): [StorageSlot!]!\n\n  \"\"\"\n  Get balance values for a contract at a specific block height.\n  Use the latest block height if not provided.\n  Requires historical execution config to be enabled.\n  \"\"\"\n  contractBalanceValues(\n    contractId: ContractId!\n    blockHeight: U32\n    assets: [AssetId!]!\n  ): [ContractBalance!]!\n}\n\ntype Receipt {\n  id: ContractId\n  pc: U64\n  is: U64\n  to: ContractId\n  toAddress: Address\n  amount: U64\n  assetId: AssetId\n  gas: U64\n  param1: U64\n  param2: U64\n  val: U64\n  ptr: U64\n  digest: Bytes32\n  reason: U64\n  ra: U64\n  rb: U64\n  rc: U64\n  rd: U64\n  len: U64\n  receiptType: ReceiptType!\n  result: U64\n  gasUsed: U64\n  data: HexString\n  sender: Address\n  recipient: Address\n  nonce: Nonce\n\n  \"\"\"\n  Set in the case of a Panic receipt to indicate a missing contract input id\n  \"\"\"\n  contractId: ContractId\n  subId: SubId\n}\n\nenum ReceiptType {\n  CALL\n  RETURN\n  RETURN_DATA\n  PANIC\n  REVERT\n  LOG\n  LOG_DATA\n  TRANSFER\n  TRANSFER_OUT\n  SCRIPT_RESULT\n  MESSAGE_OUT\n  MINT\n  BURN\n}\n\ntype RelayedTransactionFailed {\n  blockHeight: U32!\n  failure: String!\n}\n\nscalar RelayedTransactionId\n\nunion RelayedTransactionStatus = RelayedTransactionFailed\n\ninput RequiredBalance {\n  assetId: AssetId!\n  amount: U64!\n  account: Account!\n  changePolicy: ChangePolicy!\n}\n\ntype ResolvedOutput {\n  utxoId: UtxoId!\n  output: Output!\n}\n\nenum ReturnType {\n  RETURN\n  RETURN_DATA\n  REVERT\n}\n\ntype RunResult {\n  state: RunState!\n  breakpoint: OutputBreakpoint\n  jsonReceipts: [String!]!\n}\n\nenum RunState {\n  \"\"\"\n  All breakpoints have been processed, and the program has terminated\n  \"\"\"\n  COMPLETED\n\n  \"\"\"\n  Stopped on a breakpoint\n  \"\"\"\n  BREAKPOINT\n}\n\nscalar Salt\n\ntype ScriptParameters {\n  version: ScriptParametersVersion!\n  maxScriptLength: U64!\n  maxScriptDataLength: U64!\n}\n\nenum ScriptParametersVersion {\n  V1\n}\n\nscalar Signature\n\ninput SpendQueryElementInput {\n  \"\"\"\n  Identifier of the asset to spend.\n  \"\"\"\n  assetId: AssetId!\n\n  \"\"\"\n  Target amount for the query.\n  \"\"\"\n  amount: U128!\n\n  \"\"\"\n  The maximum number of currencies for selection.\n  \"\"\"\n  max: U16\n\n  \"\"\"\n  If true, returns available coins instead of failing when the requested amount is unavailable.\n  \"\"\"\n  allowPartial: Boolean\n}\n\ntype SqueezedOutStatus {\n  transactionId: TransactionId!\n  reason: String!\n}\n\ntype StateTransitionBytecode {\n  root: HexString!\n  bytecode: UploadedBytecode!\n}\n\ntype StateTransitionPurpose {\n  root: Bytes32!\n}\n\ntype StorageReadReplayEvent {\n  column: U32!\n  key: HexString!\n  value: HexString\n}\n\ntype StorageSlot {\n  key: Bytes32!\n  value: HexString!\n}\n\nscalar SubId\n\ntype SubmittedStatus {\n  time: Tai64Timestamp!\n}\n\ntype Subscription {\n  \"\"\"\n  Returns a stream of status updates for the given transaction id.\n  If the current status is [`TransactionStatus::Success`], [`TransactionStatus::Failed`],\n  or [`TransactionStatus::SqueezedOut`] the stream will return that and end immediately.\n  Other, intermediate statuses will also be returned but the stream will remain active\n  and wait for a future updates.\n\n  This stream will wait forever so it's advised to use within a timeout.\n\n  It is possible for the stream to miss an update if it is polled slower\n  then the updates arrive. In such a case the stream will close without\n  a status. If this occurs the stream can simply be restarted to return\n  the latest status.\n  \"\"\"\n  statusChange(\n    \"\"\"\n    The ID of the transaction\n    \"\"\"\n    id: TransactionId!\n\n    \"\"\"\n    If true, accept to receive the preconfirmation status\n    \"\"\"\n    includePreconfirmation: Boolean\n  ): TransactionStatus!\n  alpha__preconfirmations: TransactionStatus!\n\n  \"\"\"\n  Submits transaction to the `TxPool` and await either success or failure.\n  \"\"\"\n  submitAndAwait(\n    tx: HexString!\n    estimatePredicates: Boolean\n  ): TransactionStatus!\n\n  \"\"\"\n  Submits the transaction to the `TxPool` and returns a stream of events.\n  Compared to the `submitAndAwait`, the stream also contains\n  `SubmittedStatus` and potentially preconfirmation as an intermediate state.\n  \"\"\"\n  submitAndAwaitStatus(\n    tx: HexString!\n    estimatePredicates: Boolean\n    includePreconfirmation: Boolean\n  ): TransactionStatus!\n  contractStorageSlots(contractId: ContractId!): StorageSlot!\n  contractStorageBalances(contractId: ContractId!): ContractBalance!\n  alpha__new_blocks: HexString!\n}\n\ntype SuccessStatus {\n  transactionId: TransactionId!\n  blockHeight: U32!\n  block: Block!\n  transaction: Transaction!\n  time: Tai64Timestamp!\n  programState: ProgramState\n  receipts: [Receipt!]!\n  totalGas: U64!\n  totalFee: U64!\n}\n\nscalar Tai64Timestamp\n\ntype Transaction {\n  id: TransactionId!\n  inputAssetIds: [AssetId!]\n  inputContracts: [ContractId!]\n  inputContract: InputContract\n  policies: Policies\n  scriptGasLimit: U64\n  maturity: U32\n  mintAmount: U64\n  mintAssetId: AssetId\n  mintGasPrice: U64\n  txPointer: TxPointer\n  isScript: Boolean!\n  isCreate: Boolean!\n  isMint: Boolean!\n  isUpgrade: Boolean!\n  isUpload: Boolean!\n  isBlob: Boolean!\n  inputs: [Input!]\n  outputs: [Output!]!\n  outputContract: ContractOutput\n  witnesses: [HexString!]\n  receiptsRoot: Bytes32\n  status(includePreconfirmation: Boolean): TransactionStatus\n  script: HexString\n  scriptData: HexString\n  bytecodeWitnessIndex: U16\n  blobId: BlobId\n  salt: Salt\n  storageSlots: [HexString!]\n  bytecodeRoot: Bytes32\n  subsectionIndex: U16\n  subsectionsNumber: U16\n  proofSet: [Bytes32!]\n  upgradePurpose: UpgradePurpose\n\n  \"\"\"\n  Return the transaction bytes using canonical encoding\n  \"\"\"\n  rawPayload: HexString!\n}\n\ntype TransactionConnection {\n  \"\"\"\n  Information to aid in pagination.\n  \"\"\"\n  pageInfo: PageInfo!\n\n  \"\"\"\n  A list of edges.\n  \"\"\"\n  edges: [TransactionEdge!]!\n\n  \"\"\"\n  A list of nodes.\n  \"\"\"\n  nodes: [Transaction!]!\n}\n\n\"\"\"\nAn edge in a connection.\n\"\"\"\ntype TransactionEdge {\n  \"\"\"\n  The item at the end of the edge\n  \"\"\"\n  node: Transaction!\n\n  \"\"\"\n  A cursor for use in pagination\n  \"\"\"\n  cursor: String!\n}\n\nscalar TransactionId\n\nunion TransactionStatus =\n  | SubmittedStatus\n  | SuccessStatus\n  | PreconfirmationSuccessStatus\n  | SqueezedOutStatus\n  | FailureStatus\n  | PreconfirmationFailureStatus\n\ntype TxParameters {\n  version: TxParametersVersion!\n  maxInputs: U16!\n  maxOutputs: U16!\n  maxWitnesses: U32!\n  maxGasPerTx: U64!\n  maxSize: U64!\n  maxBytecodeSubsections: U16!\n}\n\nenum TxParametersVersion {\n  V1\n}\n\nscalar TxPointer\n\ntype TxPoolStats {\n  \"\"\"\n  The number of transactions in the pool\n  \"\"\"\n  txCount: U64!\n\n  \"\"\"\n  The total size of the transactions in the pool\n  \"\"\"\n  totalSize: U64!\n\n  \"\"\"\n  The total gas of the transactions in the pool\n  \"\"\"\n  totalGas: U64!\n}\n\nscalar U128\n\nscalar U16\n\nscalar U32\n\nscalar U64\n\nunion UpgradePurpose = ConsensusParametersPurpose | StateTransitionPurpose\n\ntype UploadedBytecode {\n  \"\"\"\n  Combined bytecode of all uploaded subsections.\n  \"\"\"\n  bytecode: HexString!\n\n  \"\"\"\n  Number of uploaded subsections (if incomplete).\n  \"\"\"\n  uploadedSubsectionsNumber: Int\n\n  \"\"\"\n  Indicates if the bytecode upload is complete.\n  \"\"\"\n  completed: Boolean!\n}\n\nscalar UtxoId\n\ntype VariableOutput {\n  to: Address!\n  amount: U64!\n  assetId: AssetId!\n}\n"}