// Copyright (c) Mysten Labs, Inc. // SPDX-License-Identifier: Apache-2.0 /* eslint-disable */ import { MoveTypeLayout } from '../types.js'; import { MoveTypeSignature } from '../types.js'; import { OpenMoveTypeSignature } from '../types.js'; import { DocumentTypeDecoration } from '@graphql-typed-document-node/core'; export type Maybe = T | null; export type InputMaybe = Maybe; export type Exact = { [K in keyof T]: T[K] }; export type MakeOptional = Omit & { [SubKey in K]?: Maybe }; export type MakeMaybe = Omit & { [SubKey in K]: Maybe }; export type MakeEmpty = { [_ in K]?: never }; export type Incremental = T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never }; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { ID: { input: string; output: string; } String: { input: string; output: string; } Boolean: { input: boolean; output: boolean; } Int: { input: number; output: number; } Float: { input: number; output: number; } /** String containing Base64-encoded binary data. */ Base64: { input: string; output: string; } /** String representation of an arbitrary width, possibly signed integer */ BigInt: { input: string; output: string; } /** ISO-8601 Date and Time: RFC3339 in UTC with format: YYYY-MM-DDTHH:MM:SS.mmmZ. Note that the milliseconds part is optional, and it may be omitted if its value is 0. */ DateTime: { input: string; output: string; } /** Arbitrary JSON data. */ JSON: { input: unknown; output: unknown; } /** * The shape of a concrete Move Type (a type with all its type parameters instantiated with concrete types), corresponding to the following recursive type: * * type MoveTypeLayout = * "address" * | "bool" * | "u8" | "u16" | ... | "u256" * | { vector: MoveTypeLayout } * | { * struct: { * type: string, * fields: [{ name: string, layout: MoveTypeLayout }], * } * } * | { enum: [{ * type: string, * variants: [{ * name: string, * fields: [{ name: string, layout: MoveTypeLayout }], * }] * }] * } */ MoveTypeLayout: { input: MoveTypeLayout; output: MoveTypeLayout; } /** * The signature of a concrete Move Type (a type with all its type parameters instantiated with concrete types, that contains no references), corresponding to the following recursive type: * * type MoveTypeSignature = * "address" * | "bool" * | "u8" | "u16" | ... | "u256" * | { vector: MoveTypeSignature } * | { * datatype: { * package: string, * module: string, * type: string, * typeParameters: [MoveTypeSignature], * } * } */ MoveTypeSignature: { input: MoveTypeSignature; output: MoveTypeSignature; } /** * The shape of an abstract Move Type (a type that can contain free type parameters, and can optionally be taken by reference), corresponding to the following recursive type: * * type OpenMoveTypeSignature = { * ref: ("&" | "&mut")?, * body: OpenMoveTypeSignatureBody, * } * * type OpenMoveTypeSignatureBody = * "address" * | "bool" * | "u8" | "u16" | ... | "u256" * | { vector: OpenMoveTypeSignatureBody } * | { * datatype { * package: string, * module: string, * type: string, * typeParameters: [OpenMoveTypeSignatureBody] * } * } * | { typeParameter: number } */ OpenMoveTypeSignature: { input: OpenMoveTypeSignature; output: OpenMoveTypeSignature; } /** String containing 32 byte hex-encoded address, with a leading '0x'. Leading zeroes can be omitted on input but will always appear in outputs (SuiAddress in output is guaranteed to be 66 characters long). */ SuiAddress: { input: string; output: string; } /** An unsigned integer that can hold values up to 2^53 - 1. This can be treated similarly to `Int`, but it is guaranteed to be non-negative, and it may be larger than 2^32 - 1. */ UInt53: { input: number; output: number; } }; /** System transaction for creating the accumulator root. */ export type AccumulatorRootCreateTransaction = { __typename?: 'AccumulatorRootCreateTransaction'; /** A workaround to define an empty variant of a GraphQL union. */ _?: Maybe; }; export type ActiveJwk = { __typename?: 'ActiveJwk'; /** The JWK algorithm parameter, (RFC 7517, Section 4.4). */ alg?: Maybe; /** The JWK RSA public exponent, (RFC 7517, Section 9.3). */ e?: Maybe; /** The most recent epoch in which the JWK was validated. */ epoch?: Maybe; /** The string (Issuing Authority) that identifies the OIDC provider. */ iss?: Maybe; /** The string (Key ID) that identifies the JWK among a set of JWKs, (RFC 7517, Section 4.5). */ kid?: Maybe; /** The JWK key type parameter, (RFC 7517, Section 4.1). */ kty?: Maybe; /** The JWK RSA modulus, (RFC 7517, Section 9.3). */ n?: Maybe; }; export type ActiveJwkConnection = { __typename?: 'ActiveJwkConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type ActiveJwkEdge = { __typename?: 'ActiveJwkEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: ActiveJwk; }; export type Address = IAddressable & Node & { __typename?: 'Address'; /** The Address' identifier, a 32-byte number represented as a 64-character hex string, with a lead "0x". */ address: Scalars['SuiAddress']['output']; /** * Fetch the address as it was at a different root version, or checkpoint. * * If no additional bound is provided, the address is fetched at the latest checkpoint known to the RPC. */ addressAt?: Maybe
; /** Attempts to fetch the object at this address. */ asObject?: Maybe; /** * Fetch the total balance for coins with marker type `coinType` (e.g. `0x2::sui::SUI`), owned by this address. * * Returns `None` when no checkpoint is set in scope (e.g. execution scope). * If the address does not own any coins of that type, a balance of zero is returned. */ balance?: Maybe; /** Total balance across coins owned by this address, grouped by coin type. */ balances?: Maybe; /** The domain explicitly configured as the default Name Service name for this address. */ defaultNameRecord?: Maybe; /** * Access a dynamic field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic field with that name could not be found attached to the object with this address. */ dynamicField?: Maybe; /** * Dynamic fields owned by this address. * * The address must correspond to an object (account addresses cannot own dynamic fields), but that object may be wrapped. */ dynamicFields?: Maybe; /** * Access a dynamic object field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic object field with that name could not be found attached to the object with this address. */ dynamicObjectField?: Maybe; /** The address's globally unique identifier, which can be passed to `Query.node` to refetch it. */ id: Scalars['ID']['output']; /** * Fetch the total balances keyed by coin types (e.g. `0x2::sui::SUI`) owned by this address. * * Returns `None` when no checkpoint is set in scope (e.g. execution scope). * If the address does not own any coins of a given type, a balance of zero is returned for that type. */ multiGetBalances?: Maybe>; /** * Access dynamic fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic fields that is guaranteed to be the same length as `keys`. If a dynamic field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicFields: Array>; /** * Access dynamic object fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic object fields that is guaranteed to be the same length as `keys`. If a dynamic object field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicObjectFields: Array>; /** Objects owned by this address, optionally filtered by type. */ objects?: Maybe; /** * Transactions associated with this address. * * Similar behavior to the `transactions` in Query but supporting the additional `AddressTransactionRelationship` filter, which defaults to `SENT`. */ transactions?: Maybe; }; export type AddressAddressAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; }; export type AddressBalanceArgs = { coinType: Scalars['String']['input']; }; export type AddressBalancesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type AddressDynamicFieldArgs = { name: DynamicFieldName; }; export type AddressDynamicFieldsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type AddressDynamicObjectFieldArgs = { name: DynamicFieldName; }; export type AddressMultiGetBalancesArgs = { keys: Array; }; export type AddressMultiGetDynamicFieldsArgs = { keys: Array; }; export type AddressMultiGetDynamicObjectFieldsArgs = { keys: Array; }; export type AddressObjectsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type AddressTransactionsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; relation?: InputMaybe; }; /** System transaction for creating the alias state. */ export type AddressAliasStateCreateTransaction = { __typename?: 'AddressAliasStateCreateTransaction'; /** A workaround to define an empty variant of a GraphQL union. */ _?: Maybe; }; /** * Identifies a specific version of an address. * * Exactly one of `address` or `name` must be specified. Additionally, at most one of `rootVersion` or `atCheckpoint` can be specified. If neither bound is provided, the address is fetched at the checkpoint being viewed. * * See `Query.address` for more details. */ export type AddressKey = { /** The address. */ address?: InputMaybe; /** If specified, sets a checkpoint bound for this address. */ atCheckpoint?: InputMaybe; /** A SuiNS name to resolve to an address. */ name?: InputMaybe; /** If specified, sets a root version bound for this address. */ rootVersion?: InputMaybe; }; /** Object is exclusively owned by a single address, and is mutable. */ export type AddressOwner = { __typename?: 'AddressOwner'; /** The owner's address. */ address?: Maybe
; }; /** The possible relationship types for a transaction: sent or affected. */ export enum AddressTransactionRelationship { /** Transactions that this address was involved in, either as the sender, sponsor, or as the owner of some object that was created, modified or transferred. */ Affected = 'AFFECTED', /** Transactions this address has sent. */ Sent = 'SENT' } /** System transaction for creating the on-chain state used by zkLogin. */ export type AuthenticatorStateCreateTransaction = { __typename?: 'AuthenticatorStateCreateTransaction'; /** A workaround to define an empty variant of a GraphQL union. */ _?: Maybe; }; /** System transaction that is executed at the end of an epoch to expire JSON Web Keys (JWKs) that are no longer valid, based on their associated epoch. This is part of the on-chain state management for zkLogin and authentication. */ export type AuthenticatorStateExpireTransaction = { __typename?: 'AuthenticatorStateExpireTransaction'; /** The initial version that the AuthenticatorStateUpdate was shared at. */ authenticatorObjInitialSharedVersion?: Maybe; /** Expire JWKs that have a lower epoch than this. */ minEpoch?: Maybe; }; export type AuthenticatorStateUpdateTransaction = { __typename?: 'AuthenticatorStateUpdateTransaction'; /** The initial version of the authenticator object that it was shared at. */ authenticatorObjInitialSharedVersion?: Maybe; /** Epoch of the authenticator state update transaction. */ epoch?: Maybe; /** Newly active JWKs (JSON Web Keys). */ newActiveJwks?: Maybe; /** Consensus round of the authenticator state update. */ round?: Maybe; }; export type AuthenticatorStateUpdateTransactionNewActiveJwksArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** Checkpoint range for which data is available. */ export type AvailableRange = { __typename?: 'AvailableRange'; /** Inclusive lower checkpoint for which data is available. */ first?: Maybe; /** Inclusive upper checkpoint for which data is available. */ last?: Maybe; }; /** The total balance for a particular coin type. */ export type Balance = { __typename?: 'Balance'; /** The balance as tracked by the accumulator object for the address. */ addressBalance?: Maybe; /** Total balance across all owned coin objects of the coin type. */ coinBalance?: Maybe; /** Coin type for the balance, such as `0x2::sui::SUI`. */ coinType?: Maybe; /** The sum total of the accumulator balance and individual coin balances owned by the address. */ totalBalance?: Maybe; }; /** Effects to the balance (sum of coin values per coin type) of addresses and objects. */ export type BalanceChange = { __typename?: 'BalanceChange'; /** The signed balance change. */ amount?: Maybe; /** The inner type of the coin whose balance has changed (e.g. `0x2::sui::SUI`). */ coinType?: Maybe; /** The address or object whose balance has changed. */ owner?: Maybe
; }; export type BalanceChangeConnection = { __typename?: 'BalanceChangeConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type BalanceChangeEdge = { __typename?: 'BalanceChangeEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: BalanceChange; }; export type BalanceConnection = { __typename?: 'BalanceConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type BalanceEdge = { __typename?: 'BalanceEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: Balance; }; /** Input for withdrawing funds from an accumulator. */ export type BalanceWithdraw = { __typename?: 'BalanceWithdraw'; /** How much to withdraw from the accumulator. */ reservation?: Maybe; /** The type of the funds accumulator to withdraw from (e.g. `0x2::balance::Balance<0x2::sui::SUI>`). */ type?: Maybe; /** The account to withdraw funds from. */ withdrawFrom?: Maybe; }; /** System transaction for initializing bridge committee. */ export type BridgeCommitteeInitTransaction = { __typename?: 'BridgeCommitteeInitTransaction'; /** The initial shared version of the bridge object. */ bridgeObjectVersion?: Maybe; }; /** System transaction for creating bridge state for cross-chain operations. */ export type BridgeStateCreateTransaction = { __typename?: 'BridgeStateCreateTransaction'; /** The chain identifier for which this bridge state is being created. */ chainIdentifier?: Maybe; }; /** * A system transaction that updates epoch information on-chain (increments the current epoch). Executed by the system once per epoch, without using gas. Epoch change transactions cannot be submitted by users, because validators will refuse to sign them. * * This transaction kind is deprecated in favour of `EndOfEpochTransaction`. */ export type ChangeEpochTransaction = { __typename?: 'ChangeEpochTransaction'; /** The total amount of gas charged for computation during the epoch. */ computationCharge?: Maybe; /** The next (to become) epoch. */ epoch?: Maybe; /** Unix timestamp when epoch started. */ epochStartTimestamp?: Maybe; /** The non-refundable storage fee. */ nonRefundableStorageFee?: Maybe; /** The epoch's corresponding protocol configuration. */ protocolConfigs?: Maybe; /** The total amount of gas charged for storage during the epoch. */ storageCharge?: Maybe; /** The amount of storage rebate refunded to the transaction senders. */ storageRebate?: Maybe; /** System packages that will be written by validators before the new epoch starts, to upgrade them on-chain. These objects do not have a "previous transaction" because they are not written on-chain yet. Consult `effects.objectChanges` for this transaction to see the actual objects written. */ systemPackages?: Maybe; }; /** * A system transaction that updates epoch information on-chain (increments the current epoch). Executed by the system once per epoch, without using gas. Epoch change transactions cannot be submitted by users, because validators will refuse to sign them. * * This transaction kind is deprecated in favour of `EndOfEpochTransaction`. */ export type ChangeEpochTransactionSystemPackagesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** Checkpoints contain finalized transactions and are used for node synchronization and global transaction ordering. */ export type Checkpoint = Node & { __typename?: 'Checkpoint'; /** * A commitment by the committee at each checkpoint on the artifacts of the checkpoint. * e.g., object checkpoint states */ artifactsDigest?: Maybe; /** The Base64 serialized BCS bytes of this checkpoint's contents. */ contentBcs?: Maybe; /** A 32-byte hash that uniquely identifies the checkpoint's content, encoded in Base58. */ contentDigest?: Maybe; /** A 32-byte hash that uniquely identifies the checkpoint, encoded in Base58. This is a hash of the checkpoint's summary. */ digest?: Maybe; /** The epoch that this checkpoint is part of. */ epoch?: Maybe; /** The checkpoint's globally unique identifier, which can be passed to `Query.node` to refetch it. */ id: Scalars['ID']['output']; /** The total number of transactions in the network by the end of this checkpoint. */ networkTotalTransactions?: Maybe; /** The digest of the previous checkpoint's summary. */ previousCheckpointDigest?: Maybe; /** Query the RPC as if this checkpoint were the latest checkpoint. */ query?: Maybe; /** The computation cost, storage cost, storage rebate, and non-refundable storage fee accumulated during this epoch, up to and including this checkpoint. These values increase monotonically across checkpoints in the same epoch, and reset on epoch boundaries. */ rollingGasSummary?: Maybe; /** The checkpoint's position in the total order of finalized checkpoints, agreed upon by consensus. */ sequenceNumber: Scalars['UInt53']['output']; /** The Base64 serialized BCS bytes of this checkpoint's summary. */ summaryBcs?: Maybe; /** The timestamp at which the checkpoint is agreed to have happened according to consensus. Transactions that access time in this checkpoint will observe this timestamp. */ timestamp?: Maybe; transactions?: Maybe; /** The aggregation of signatures from a quorum of validators for the checkpoint proposal. */ validatorSignatures?: Maybe; }; /** Checkpoints contain finalized transactions and are used for node synchronization and global transaction ordering. */ export type CheckpointTransactionsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type CheckpointConnection = { __typename?: 'CheckpointConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type CheckpointEdge = { __typename?: 'CheckpointEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: Checkpoint; }; export type CheckpointFilter = { /** Limit query results to checkpoints that occured strictly after the given checkpoint. */ afterCheckpoint?: InputMaybe; /** Limit query results to checkpoints that occured at the given checkpoint. */ atCheckpoint?: InputMaybe; /** Limit query results to checkpoints at this epoch. */ atEpoch?: InputMaybe; /** Limit query results to checkpoints that occured strictly before the given checkpoint. */ beforeCheckpoint?: InputMaybe; }; /** A G1 elliptic curve point with 3 base10-encoded Bn254 field elements. */ export type CircomG1 = { __typename?: 'CircomG1'; e0?: Maybe; e1?: Maybe; e2?: Maybe; }; /** A G2 elliptic curve point with 6 base10-encoded Bn254 field elements. */ export type CircomG2 = { __typename?: 'CircomG2'; e00?: Maybe; e01?: Maybe; e10?: Maybe; e11?: Maybe; e20?: Maybe; e21?: Maybe; }; /** System transaction for creating the coin deny list state. */ export type CoinDenyListStateCreateTransaction = { __typename?: 'CoinDenyListStateCreateTransaction'; /** A workaround to define an empty variant of a GraphQL union. */ _?: Maybe; }; /** An object representing metadata about a coin type. */ export type CoinMetadata = IAddressable & IMoveObject & IObject & { __typename?: 'CoinMetadata'; /** The CoinMetadata's ID. */ address: Scalars['SuiAddress']['output']; /** * Fetch the address as it was at a different root version, or checkpoint. * * If no additional bound is provided, the address is fetched at the latest checkpoint known to the RPC. */ addressAt?: Maybe
; /** Whether the `DenyCap` can be used to enable a global pause that behaves as if all addresses were added to the deny list. `null` indicates that it is not known whether the currency can be paused or not. This field is only populated on currencies held in the Coin Registry. To determine whether a legacy currency can be paused, check the contents of its `DenyCap`, if it can be found. */ allowGlobalPause?: Maybe; /** * Fetch the total balance for coins with marker type `coinType` (e.g. `0x2::sui::SUI`), owned by this address. * * If the address does not own any coins of that type, a balance of zero is returned. */ balance?: Maybe; /** Total balance across coins owned by this address, grouped by coin type. */ balances?: Maybe; /** The structured representation of the object's contents. */ contents?: Maybe; /** Number of decimal places the coin uses. */ decimals?: Maybe; /** The domain explicitly configured as the default Name Service name for this address. */ defaultNameRecord?: Maybe; /** If the currency is regulated, this object represents the capability to modify the deny list. If a capability is known but wrapped, its address can be fetched but other fields will not be accessible. */ denyCap?: Maybe; /** Description of the coin. */ description?: Maybe; /** 32-byte hash that identifies the object's contents, encoded in Base58. */ digest?: Maybe; /** * Access a dynamic field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic field with that name could not be found attached to this object. */ dynamicField?: Maybe; /** * Dynamic fields owned by this object. * * Dynamic fields on wrapped objects can be accessed using `Address.dynamicFields`. */ dynamicFields?: Maybe; /** * Access a dynamic object field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic object field with that name could not be found attached to this object. */ dynamicObjectField?: Maybe; /** * Whether this object can be transfered using the `TransferObjects` Programmable Transaction Command or `sui::transfer::public_transfer`. * * Both these operations require the object to have both the `key` and `store` abilities. */ hasPublicTransfer?: Maybe; /** URL for the coin logo. */ iconUrl?: Maybe; /** The Base64-encoded BCS serialize of this object, as a `MoveObject`. */ moveObjectBcs?: Maybe; /** * Fetch the total balances keyed by coin types (e.g. `0x2::sui::SUI`) owned by this address. * * If the address does not own any coins of a given type, a balance of zero is returned for that type. */ multiGetBalances?: Maybe>; /** * Access dynamic fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic fields that is guaranteed to be the same length as `keys`. If a dynamic field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicFields: Array>; /** * Access dynamic object fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic object fields that is guaranteed to be the same length as `keys`. If a dynamic object field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicObjectFields: Array>; /** Name for the coin. */ name?: Maybe; /** Fetch the object with the same ID, at a different version, root version bound, or checkpoint. */ objectAt?: Maybe; /** The Base64-encoded BCS serialization of this object, as an `Object`. */ objectBcs?: Maybe; /** Paginate all versions of this object after this one. */ objectVersionsAfter?: Maybe; /** Paginate all versions of this object before this one. */ objectVersionsBefore?: Maybe; /** Objects owned by this object, optionally filtered by type. */ objects?: Maybe; /** The object's owner kind. */ owner?: Maybe; /** The transaction that created this version of the object. */ previousTransaction?: Maybe; /** The transactions that sent objects to this object. */ receivedTransactions?: Maybe; /** Whether the currency is regulated or not. `null` indicates that the regulatory status is unknown. */ regulatedState?: Maybe; /** The SUI returned to the sponsor or sender of the transaction that modifies or deletes this object. */ storageRebate?: Maybe; /** The overall balance of coins issued. */ supply?: Maybe; /** Future behavior of the supply. `null` indicates that the future behavior of the supply is not known because the currency's treasury still exists. */ supplyState?: Maybe; /** Symbol for the coin. */ symbol?: Maybe; /** The version of this object that this content comes from. */ version?: Maybe; }; /** An object representing metadata about a coin type. */ export type CoinMetadataAddressAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; }; /** An object representing metadata about a coin type. */ export type CoinMetadataBalanceArgs = { coinType: Scalars['String']['input']; }; /** An object representing metadata about a coin type. */ export type CoinMetadataBalancesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** An object representing metadata about a coin type. */ export type CoinMetadataDynamicFieldArgs = { name: DynamicFieldName; }; /** An object representing metadata about a coin type. */ export type CoinMetadataDynamicFieldsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** An object representing metadata about a coin type. */ export type CoinMetadataDynamicObjectFieldArgs = { name: DynamicFieldName; }; /** An object representing metadata about a coin type. */ export type CoinMetadataMultiGetBalancesArgs = { keys: Array; }; /** An object representing metadata about a coin type. */ export type CoinMetadataMultiGetDynamicFieldsArgs = { keys: Array; }; /** An object representing metadata about a coin type. */ export type CoinMetadataMultiGetDynamicObjectFieldsArgs = { keys: Array; }; /** An object representing metadata about a coin type. */ export type CoinMetadataObjectAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; version?: InputMaybe; }; /** An object representing metadata about a coin type. */ export type CoinMetadataObjectVersionsAfterArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** An object representing metadata about a coin type. */ export type CoinMetadataObjectVersionsBeforeArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** An object representing metadata about a coin type. */ export type CoinMetadataObjectsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** An object representing metadata about a coin type. */ export type CoinMetadataReceivedTransactionsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** System transaction for creating the coin registry. */ export type CoinRegistryCreateTransaction = { __typename?: 'CoinRegistryCreateTransaction'; /** A workaround to define an empty variant of a GraphQL union. */ _?: Maybe; }; /** A single command in the programmable transaction. */ export type Command = MakeMoveVecCommand | MergeCoinsCommand | MoveCallCommand | OtherCommand | PublishCommand | SplitCoinsCommand | TransferObjectsCommand | UpgradeCommand; export type CommandConnection = { __typename?: 'CommandConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type CommandEdge = { __typename?: 'CommandEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: Command; }; /** * A value produced or modified during command execution. * * This can represent either a return value from a command or an argument that was mutated by reference. */ export type CommandOutput = { __typename?: 'CommandOutput'; /** The transaction argument that this value corresponds to (if any). */ argument?: Maybe; /** The structured Move value, if available. */ value?: Maybe; }; /** The intermediate results for each command of a transaction simulation. */ export type CommandResult = { __typename?: 'CommandResult'; /** Changes made to arguments that were mutably borrowed by each command in this transaction. */ mutatedReferences?: Maybe>; /** Return results of each command in this transaction. */ returnValues?: Maybe>; }; /** Object is exclusively owned by a single adderss and sequenced via consensus. */ export type ConsensusAddressOwner = { __typename?: 'ConsensusAddressOwner'; /** The owner's address. */ address?: Maybe
; /** The version at which the object most recently bcame a consensus object. This serves the same function as `Shared.initialSharedVersion`, except it may change if the object's `owner` type changes. */ startVersion?: Maybe; }; /** System transaction that runs at the beginning of a checkpoint, and is responsible for setting the current value of the clock, based on the timestamp from consensus. */ export type ConsensusCommitPrologueTransaction = { __typename?: 'ConsensusCommitPrologueTransaction'; /** * Digest of any additional state computed by the consensus handler. * Used to detect forking bugs as early as possible. * * Present in V4. */ additionalStateDigest?: Maybe; /** * Unix timestamp from consensus. * * Present in V1, V2, V3, V4. */ commitTimestamp?: Maybe; /** * Digest of consensus output, encoded as a Base58 string. * * Present in V2, V3, V4. */ consensusCommitDigest?: Maybe; /** * Epoch of the commit prologue transaction. * * Present in V1, V2, V3, V4. */ epoch?: Maybe; /** * Consensus round of the commit. * * Present in V1, V2, V3, V4. */ round?: Maybe; /** * The sub DAG index of the consensus commit. This field is populated if there * are multiple consensus commits per round. * * Present in V3, V4. */ subDagIndex?: Maybe; }; /** Reason why a transaction that attempted to access a consensus-managed object was cancelled. */ export enum ConsensusObjectCancellationReason { /** Read operation was cancelled. */ CancelledRead = 'CANCELLED_READ', /** Object congestion prevented execution. */ Congested = 'CONGESTED', /** Randomness service was unavailable. */ RandomnessUnavailable = 'RANDOMNESS_UNAVAILABLE', /** Internal use only. */ Unknown = 'UNKNOWN' } /** A transaction that was cancelled before it could access the consensus-managed object, so the object was an input but remained unchanged. */ export type ConsensusObjectCancelled = { __typename?: 'ConsensusObjectCancelled'; /** The ID of the consensus-managed object that the transaction intended to access. */ address?: Maybe; /** Reason why the transaction was cancelled. */ cancellationReason?: Maybe; }; export type ConsensusObjectRead = { __typename?: 'ConsensusObjectRead'; /** The version of the consensus-managed object that was read by this transaction. */ object?: Maybe; }; /** A rendered JSON blob based on an on-chain template. */ export type Display = { __typename?: 'Display'; /** If any fields failed to render, this will contain a mapping from failed field names to error messages. If all fields succeed, this will be `null`. */ errors?: Maybe; /** Output for all successfully substituted display fields. Unsuccessful fields will be `null`, and will be accompanied by a field in `errors`, explaining the error. */ output?: Maybe; }; /** System transaction for creating the display registry. */ export type DisplayRegistryCreateTransaction = { __typename?: 'DisplayRegistryCreateTransaction'; /** A workaround to define an empty variant of a GraphQL union. */ _?: Maybe; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicField = IAddressable & IMoveObject & IObject & Node & { __typename?: 'DynamicField'; /** The DynamicField's ID. */ address: Scalars['SuiAddress']['output']; /** * Fetch the address as it was at a different root version, or checkpoint. * * If no additional bound is provided, the address is fetched at the latest checkpoint known to the RPC. */ addressAt?: Maybe
; /** * Fetch the total balance for coins with marker type `coinType` (e.g. `0x2::sui::SUI`), owned by this address. * * If the address does not own any coins of that type, a balance of zero is returned. */ balance?: Maybe; /** Total balance across coins owned by this address, grouped by coin type. */ balances?: Maybe; /** The structured representation of the object's contents. */ contents?: Maybe; /** The domain explicitly configured as the default Name Service name for this address. */ defaultNameRecord?: Maybe; /** 32-byte hash that identifies the object's contents, encoded in Base58. */ digest?: Maybe; /** * Access a dynamic field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic field with that name could not be found attached to this object. */ dynamicField?: Maybe; /** * Dynamic fields owned by this object. * * Dynamic fields on wrapped objects can be accessed using `Address.dynamicFields`. */ dynamicFields?: Maybe; /** * Access a dynamic object field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic object field with that name could not be found attached to this object. */ dynamicObjectField?: Maybe; /** * Whether this object can be transfered using the `TransferObjects` Programmable Transaction Command or `sui::transfer::public_transfer`. * * Both these operations require the object to have both the `key` and `store` abilities. */ hasPublicTransfer?: Maybe; /** The dynamic field's globally unique identifier, which can be passed to `Query.node` to refetch it. */ id: Scalars['ID']['output']; /** The Base64-encoded BCS serialize of this object, as a `MoveObject`. */ moveObjectBcs?: Maybe; /** * Fetch the total balances keyed by coin types (e.g. `0x2::sui::SUI`) owned by this address. * * If the address does not own any coins of a given type, a balance of zero is returned for that type. */ multiGetBalances?: Maybe>; /** * Access dynamic fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic fields that is guaranteed to be the same length as `keys`. If a dynamic field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicFields: Array>; /** * Access dynamic object fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic object fields that is guaranteed to be the same length as `keys`. If a dynamic object field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicObjectFields: Array>; /** The dynamic field's name, as a Move value. */ name?: Maybe; /** Fetch the object with the same ID, at a different version, root version bound, or checkpoint. */ objectAt?: Maybe; /** The Base64-encoded BCS serialization of this object, as an `Object`. */ objectBcs?: Maybe; /** Paginate all versions of this object after this one. */ objectVersionsAfter?: Maybe; /** Paginate all versions of this object before this one. */ objectVersionsBefore?: Maybe; /** Objects owned by this object, optionally filtered by type. */ objects?: Maybe; /** The object's owner kind. */ owner?: Maybe; /** The transaction that created this version of the object. */ previousTransaction?: Maybe; /** The transactions that sent objects to this object. */ receivedTransactions?: Maybe; /** The SUI returned to the sponsor or sender of the transaction that modifies or deletes this object. */ storageRebate?: Maybe; /** The dynamic field's value, as a Move value for dynamic fields and as a MoveObject for dynamic object fields. */ value?: Maybe; /** The version of this object that this content comes from. */ version?: Maybe; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldAddressAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldBalanceArgs = { coinType: Scalars['String']['input']; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldBalancesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldDynamicFieldArgs = { name: DynamicFieldName; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldDynamicFieldsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldDynamicObjectFieldArgs = { name: DynamicFieldName; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldMultiGetBalancesArgs = { keys: Array; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldMultiGetDynamicFieldsArgs = { keys: Array; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldMultiGetDynamicObjectFieldsArgs = { keys: Array; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldObjectAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; version?: InputMaybe; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldObjectVersionsAfterArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldObjectVersionsBeforeArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldObjectsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Dynamic fields are heterogenous fields that can be added or removed from an object at runtime. Their names are arbitrary Move values that have `copy`, `drop`, and `store`. * * There are two sub-types of dynamic fields: * * - Dynamic fields can store any value that has `store`. Objects stored in this kind of field will be considered wrapped (not accessible via its ID by external tools like explorers, wallets, etc. accessing storage). * - Dynamic object fields can only store objects (values that have the `key` ability, and an `id: UID` as its first field) that have `store`, but they will still be directly accessible off-chain via their ID after being attached as a field. */ export type DynamicFieldReceivedTransactionsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type DynamicFieldConnection = { __typename?: 'DynamicFieldConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type DynamicFieldEdge = { __typename?: 'DynamicFieldEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: DynamicField; }; /** * A description of a dynamic field's name. * * Names can either be given as serialized `bcs` accompanied by its `type`, or as a Display v2 `literal` expression. Other combinations of inputs are not supported. */ export type DynamicFieldName = { /** The Base64-encoded BCS serialization of the dynamic field's 'name'. */ bcs?: InputMaybe; /** The name represented as a Display v2 literal expression. */ literal?: InputMaybe; /** The type of the dynamic field's name, like 'u64' or '0x2::kiosk::Listing'. */ type?: InputMaybe; }; /** The value of a dynamic field (`MoveValue`) or dynamic object field (`MoveObject`). */ export type DynamicFieldValue = MoveObject | MoveValue; /** An Ed25519 public key. */ export type Ed25519PublicKey = { __typename?: 'Ed25519PublicKey'; /** The raw public key bytes. */ bytes?: Maybe; }; /** An Ed25519 signature. */ export type Ed25519Signature = { __typename?: 'Ed25519Signature'; /** The public key bytes. */ publicKey?: Maybe; /** The raw signature bytes. */ signature?: Maybe; }; /** System transaction that supersedes `ChangeEpochTransaction` as the new way to run transactions at the end of an epoch. Behaves similarly to `ChangeEpochTransaction` but can accommodate other optional transactions to run at the end of the epoch. */ export type EndOfEpochTransaction = { __typename?: 'EndOfEpochTransaction'; /** The list of system transactions that are allowed to run at the end of the epoch. */ transactions?: Maybe; }; /** System transaction that supersedes `ChangeEpochTransaction` as the new way to run transactions at the end of an epoch. Behaves similarly to `ChangeEpochTransaction` but can accommodate other optional transactions to run at the end of the epoch. */ export type EndOfEpochTransactionTransactionsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type EndOfEpochTransactionKind = AccumulatorRootCreateTransaction | AddressAliasStateCreateTransaction | AuthenticatorStateCreateTransaction | AuthenticatorStateExpireTransaction | BridgeCommitteeInitTransaction | BridgeStateCreateTransaction | ChangeEpochTransaction | CoinDenyListStateCreateTransaction | CoinRegistryCreateTransaction | DisplayRegistryCreateTransaction | RandomnessStateCreateTransaction | StoreExecutionTimeObservationsTransaction | WriteAccumulatorStorageCostTransaction; export type EndOfEpochTransactionKindConnection = { __typename?: 'EndOfEpochTransactionKindConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type EndOfEpochTransactionKindEdge = { __typename?: 'EndOfEpochTransactionKindEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: EndOfEpochTransactionKind; }; /** * Activity on Sui is partitioned in time, into epochs. * * Epoch changes are opportunities for the network to reconfigure itself (perform protocol or system package upgrades, or change the committee) and distribute staking rewards. The network aims to keep epochs roughly the same duration as each other. * * During a particular epoch the following data is fixed: * * - protocol version, * - reference gas price, * - system package versions, * - validators in the committee. */ export type Epoch = Node & { __typename?: 'Epoch'; /** The epoch's corresponding checkpoints. */ checkpoints?: Maybe; /** * State of the Coin DenyList object (0x403) at the start of this epoch. * * The DenyList controls access to Regulated Coins. Writes to the DenyList are accumulated and only take effect on the next epoch boundary. Consequently, it's possible to determine the state of the DenyList for a transaction by reading it at the start of the epoch the transaction is in. */ coinDenyList?: Maybe; /** The timestamp associated with the last checkpoint in the epoch (or `null` if the epoch has not finished yet). */ endTimestamp?: Maybe; /** The epoch's id as a sequence number that starts at 0 and is incremented by one at every epoch change. */ epochId: Scalars['UInt53']['output']; /** The storage fees paid for transactions executed during the epoch (or `null` if the epoch has not finished yet). */ fundInflow?: Maybe; /** The storage fee rebates paid to users who deleted the data associated with past transactions (or `null` if the epoch has not finished yet). */ fundOutflow?: Maybe; /** * The storage fund available in this epoch (or `null` if the epoch has not finished yet). * This fund is used to redistribute storage fees from past transactions to future validators. */ fundSize?: Maybe; /** The epoch's globally unique identifier, which can be passed to `Query.node` to refetch it. */ id: Scalars['ID']['output']; /** * A commitment by the committee at the end of epoch on the contents of the live object set at that time. * This can be used to verify state snapshots. */ liveObjectSetDigest?: Maybe; /** The difference between the fund inflow and outflow, representing the net amount of storage fees accumulated in this epoch (or `null` if the epoch has not finished yet). */ netInflow?: Maybe; /** The epoch's corresponding protocol configuration, including the feature flags and the configuration options. */ protocolConfigs?: Maybe; /** The minimum gas price that a quorum of validators are guaranteed to sign a transaction for in this epoch. */ referenceGasPrice?: Maybe; /** The timestamp associated with the first checkpoint in the epoch. */ startTimestamp?: Maybe; /** The system packages used by all transactions in this epoch. */ systemPackages?: Maybe; /** The contents of the system state inner object at the start of this epoch. */ systemState?: Maybe; /** * The total number of checkpoints in this epoch. * * Returns `None` when no checkpoint is set in scope (e.g. execution scope). */ totalCheckpoints?: Maybe; /** The total amount of gas fees (in MIST) that were paid in this epoch (or `null` if the epoch has not finished yet). */ totalGasFees?: Maybe; /** The total MIST rewarded as stake (or `null` if the epoch has not finished yet). */ totalStakeRewards?: Maybe; /** The amount added to total gas fees to make up the total stake rewards (or `null` if the epoch has not finished yet). */ totalStakeSubsidies?: Maybe; /** * The total number of transaction blocks in this epoch. * * If the epoch has not finished yet, this number is computed based on the number of transactions at the latest known checkpoint. */ totalTransactions?: Maybe; /** * The transactions in this epoch, optionally filtered by transaction filters. * * Returns `None` when no checkpoint is set in scope (e.g. execution scope). */ transactions?: Maybe; /** Validator-related properties, including the active validators. */ validatorSet?: Maybe; }; /** * Activity on Sui is partitioned in time, into epochs. * * Epoch changes are opportunities for the network to reconfigure itself (perform protocol or system package upgrades, or change the committee) and distribute staking rewards. The network aims to keep epochs roughly the same duration as each other. * * During a particular epoch the following data is fixed: * * - protocol version, * - reference gas price, * - system package versions, * - validators in the committee. */ export type EpochCheckpointsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Activity on Sui is partitioned in time, into epochs. * * Epoch changes are opportunities for the network to reconfigure itself (perform protocol or system package upgrades, or change the committee) and distribute staking rewards. The network aims to keep epochs roughly the same duration as each other. * * During a particular epoch the following data is fixed: * * - protocol version, * - reference gas price, * - system package versions, * - validators in the committee. */ export type EpochSystemPackagesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Activity on Sui is partitioned in time, into epochs. * * Epoch changes are opportunities for the network to reconfigure itself (perform protocol or system package upgrades, or change the committee) and distribute staking rewards. The network aims to keep epochs roughly the same duration as each other. * * During a particular epoch the following data is fixed: * * - protocol version, * - reference gas price, * - system package versions, * - validators in the committee. */ export type EpochTransactionsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type EpochConnection = { __typename?: 'EpochConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type EpochEdge = { __typename?: 'EpochEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: Epoch; }; export type Event = { __typename?: 'Event'; /** The Move value emitted for this event. */ contents?: Maybe; /** * The Base64 encoded BCS serialized bytes of the entire Event structure from sui-types. * This includes: package_id, transaction_module, sender, type, and contents (which itself contains the BCS-serialized Move struct data). */ eventBcs?: Maybe; /** Address of the sender of the transaction that emitted this event. */ sender?: Maybe
; /** The position of the event among the events from the same transaction. */ sequenceNumber: Scalars['UInt53']['output']; /** * Timestamp corresponding to the checkpoint this event's transaction was finalized in. * All events from the same transaction share the same timestamp. * * `null` for simulated/executed transactions as they are not included in a checkpoint. */ timestamp?: Maybe; /** The transaction that emitted this event. This information is only available for events from indexed transactions, and not from transactions that have just been executed or dry-run. */ transaction?: Maybe; /** The module containing the function that was called in the programmable transaction, that resulted in this event being emitted. */ transactionModule?: Maybe; }; export type EventConnection = { __typename?: 'EventConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type EventEdge = { __typename?: 'EventEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: Event; }; export type EventFilter = { /** Limit to events that occured strictly after the given checkpoint. */ afterCheckpoint?: InputMaybe; /** Limit to events in the given checkpoint. */ atCheckpoint?: InputMaybe; /** Limit to event that occured strictly before the given checkpoint. */ beforeCheckpoint?: InputMaybe; /** * Events emitted by a particular module. An event is emitted by a particular module if some function in the module is called by a PTB and emits an event. * * Modules can be filtered by their package, or package::module. We currently do not support filtering by emitting module and event type at the same time so if both are provided in one filter, the query will error. */ module?: InputMaybe; /** Filter on events by transaction sender address. */ sender?: InputMaybe; /** * This field is used to specify the type of event emitted. * * Events can be filtered by their type's package, package::module, or their fully qualified type name. * * Generic types can be queried by either the generic type name, e.g. `0x2::coin::Coin`, or by the full type name, such as `0x2::coin::Coin<0x2::sui::SUI>`. */ type?: InputMaybe; }; /** Represents execution error information for failed transactions. */ export type ExecutionError = { __typename?: 'ExecutionError'; /** * The error code of the Move abort, populated if this transaction failed with a Move abort. * * Returns the explicit code if the abort used `code` annotation (e.g., `abort(ERR, code = 5)` returns 5), otherwise returns the raw abort code containing encoded error information. */ abortCode?: Maybe; /** * An associated constant for the error. Only populated for clever errors. * * Constants are returned as human-readable strings when possible. Complex types are returned as Base64-encoded bytes. */ constant?: Maybe; /** The function that the abort originated from. Only populated for Move aborts and primitive runtime errors that have function name information. */ function?: Maybe; /** The error's name. Only populated for clever errors. */ identifier?: Maybe; /** The instruction offset in the Move bytecode where the error occurred. Populated for Move aborts and primitive runtime errors. */ instructionOffset?: Maybe; /** * Human readable explanation of why the transaction failed. * * For Move aborts, the error message will be resolved to a human-readable form if possible, otherwise it will fall back to displaying the abort code and location. */ message: Scalars['String']['output']; /** The module that the abort originated from. Only populated for Move aborts and primitive runtime errors. */ module?: Maybe; /** The source line number for the abort. Only populated for clever errors. */ sourceLineNumber?: Maybe; }; /** The execution result of a transaction, including the transaction effects. */ export type ExecutionResult = { __typename?: 'ExecutionResult'; /** The effects of the transaction execution. */ effects?: Maybe; }; /** The execution status of this transaction: success or failure. */ export enum ExecutionStatus { /** The transaction could not be executed. */ Failure = 'FAILURE', /** The transaction was successfully executed. */ Success = 'SUCCESS' } /** A boolean protocol configuration. */ export type FeatureFlag = { __typename?: 'FeatureFlag'; /** Feature flag name. */ key: Scalars['String']['output']; /** Feature flag value. */ value: Scalars['Boolean']['output']; }; /** Access to the gas inputs, after they have been smashed into one coin. The gas coin can only be used by reference, except for with `TransferObjectsTransaction` that can accept it by value. */ export type GasCoin = { __typename?: 'GasCoin'; /** Placeholder field (gas coin has no additional data) */ _?: Maybe; }; /** * Summary of charges from transactions. * * Storage is charged in three parts -- `storage_cost`, `-storage_rebate`, and `non_refundable_storage_fee` -- independently of `computation_cost`. * * The overall cost of a transaction, deducted from its gas coins, is its `computation_cost + storage_cost - storage_rebate`. `non_refundable_storage_fee` is collected from objects being mutated or deleted and accumulated by the system in storage funds, the remaining storage costs of previous object versions are what become the `storage_rebate`. The ratio between `non_refundable_storage_fee` and `storage_rebate` is set by the protocol. */ export type GasCostSummary = { __typename?: 'GasCostSummary'; /** The sum cost of computation/execution */ computationCost?: Maybe; /** Amount that is retained by the system in the storage fund from the cost of the previous versions of objects being mutated or deleted. */ nonRefundableStorageFee?: Maybe; /** Cost for storage at the time the transaction is executed, calculated as the size of the objects being mutated in bytes multiplied by a storage cost per byte (part of the protocol). */ storageCost?: Maybe; /** Amount the user gets back from the storage cost of the previous versions of objects being mutated or deleted. */ storageRebate?: Maybe; }; /** Effects related to gas (costs incurred and the identity of the smashed gas object returned). */ export type GasEffects = { __typename?: 'GasEffects'; /** The gas object used to pay for this transaction. If multiple gas coins were provided, this represents the combined coin after smashing. */ gasObject?: Maybe; /** Breakdown of the gas costs for this transaction. */ gasSummary?: Maybe; }; export type GasInput = { __typename?: 'GasInput'; /** The maximum SUI that can be expended by executing this transaction */ gasBudget?: Maybe; /** Objects used to pay for a transaction's execution and storage */ gasPayment?: Maybe; /** An unsigned integer specifying the number of native tokens per gas unit this transaction will pay (in MIST). */ gasPrice?: Maybe; /** Address of the owner of the gas object(s) used. */ gasSponsor?: Maybe
; }; export type GasInputGasPaymentArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** System transaction that initializes the network and writes the initial set of objects on-chain. */ export type GenesisTransaction = { __typename?: 'GenesisTransaction'; /** Objects to be created during genesis. */ objects?: Maybe; }; /** System transaction that initializes the network and writes the initial set of objects on-chain. */ export type GenesisTransactionObjectsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Interface implemented by GraphQL types representing entities that are identified by an address. * * An address uniquely represents either the public key of an account, or an object's ID, but never both. It is not possible to determine which type an address represents up-front. If an object is wrapped, its contents will not be accessible via its address, but it will still be possible to access other objects it owns. */ export type IAddressable = { address: Scalars['SuiAddress']['output']; /** * Fetch the address as it was at a different root version, or checkpoint. * * If no additional bound is provided, the address is fetched at the latest checkpoint known to the RPC. */ addressAt?: Maybe
; /** * Fetch the total balance for coins with marker type `coinType` (e.g. `0x2::sui::SUI`), owned by this address. * * If the address does not own any coins of that type, a balance of zero is returned. */ balance?: Maybe; /** Total balance across coins owned by this address, grouped by coin type. */ balances?: Maybe; /** The domain explicitly configured as the default Name Service name for this address. */ defaultNameRecord?: Maybe; /** * Fetch the total balances keyed by coin types (e.g. `0x2::sui::SUI`) owned by this address. * * Returns `null` when no checkpoint is set in scope (e.g. execution scope). If the address does not own any coins of a given type, a balance of zero is returned for that type. */ multiGetBalances?: Maybe>; /** Objects owned by this address, optionally filtered by type. */ objects?: Maybe; }; /** * Interface implemented by GraphQL types representing entities that are identified by an address. * * An address uniquely represents either the public key of an account, or an object's ID, but never both. It is not possible to determine which type an address represents up-front. If an object is wrapped, its contents will not be accessible via its address, but it will still be possible to access other objects it owns. */ export type IAddressableAddressAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; }; /** * Interface implemented by GraphQL types representing entities that are identified by an address. * * An address uniquely represents either the public key of an account, or an object's ID, but never both. It is not possible to determine which type an address represents up-front. If an object is wrapped, its contents will not be accessible via its address, but it will still be possible to access other objects it owns. */ export type IAddressableBalanceArgs = { coinType: Scalars['String']['input']; }; /** * Interface implemented by GraphQL types representing entities that are identified by an address. * * An address uniquely represents either the public key of an account, or an object's ID, but never both. It is not possible to determine which type an address represents up-front. If an object is wrapped, its contents will not be accessible via its address, but it will still be possible to access other objects it owns. */ export type IAddressableBalancesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Interface implemented by GraphQL types representing entities that are identified by an address. * * An address uniquely represents either the public key of an account, or an object's ID, but never both. It is not possible to determine which type an address represents up-front. If an object is wrapped, its contents will not be accessible via its address, but it will still be possible to access other objects it owns. */ export type IAddressableMultiGetBalancesArgs = { keys: Array; }; /** * Interface implemented by GraphQL types representing entities that are identified by an address. * * An address uniquely represents either the public key of an account, or an object's ID, but never both. It is not possible to determine which type an address represents up-front. If an object is wrapped, its contents will not be accessible via its address, but it will still be possible to access other objects it owns. */ export type IAddressableObjectsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Interface implemented by all GraphQL types that represent a Move datatype definition (either a struct or an enum definition). * * This interface is used to provide a way to access fields that are shared by both structs and enums, e.g., the module that the datatype belongs to, the name of the datatype, type parameters etc. */ export type IMoveDatatype = { /** Abilities on this datatype definition. */ abilities?: Maybe>; /** The datatype's fully-qualified name, including package address, module name, and datatype name. */ fullyQualifiedName: Scalars['String']['output']; /** The module that this datatype is defined in */ module: MoveModule; /** The datatype's unqualified name */ name: Scalars['String']['output']; /** * Constraints on the datatype's formal type parameters * * Move bytecode does not name type parameters, so when they are referenced (e.g. in field types), they are identified by their index in this list. */ typeParameters?: Maybe>; }; /** Interface implemented by types that represent a Move object on-chain (A Move value whose type has `key`). */ export type IMoveObject = { /** The structured representation of the object's contents. */ contents?: Maybe; /** * Access a dynamic field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic field with that name could not be found attached to this object. */ dynamicField?: Maybe; /** * Dynamic fields and dynamic object fields owned by this object. * * Dynamic fields on wrapped objects can be accessed using `Address.dynamicFields`. */ dynamicFields?: Maybe; /** * Access a dynamic object field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic object field with that name could not be found attached to this object. */ dynamicObjectField?: Maybe; /** * Whether this object can be transfered using the `TransferObjects` Programmable Transaction Command or `sui::transfer::public_transfer`. * * Both these operations require the object to have both the `key` and `store` abilities. */ hasPublicTransfer?: Maybe; /** The Base64-encoded BCS serialize of this object, as a `MoveObject`. */ moveObjectBcs?: Maybe; /** * Access dynamic fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic fields that is guaranteed to be the same length as `keys`. If a dynamic field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicFields: Array>; /** * Access dynamic object fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic object fields that is guaranteed to be the same length as `keys`. If a dynamic object field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicObjectFields: Array>; }; /** Interface implemented by types that represent a Move object on-chain (A Move value whose type has `key`). */ export type IMoveObjectDynamicFieldArgs = { name: DynamicFieldName; }; /** Interface implemented by types that represent a Move object on-chain (A Move value whose type has `key`). */ export type IMoveObjectDynamicFieldsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** Interface implemented by types that represent a Move object on-chain (A Move value whose type has `key`). */ export type IMoveObjectDynamicObjectFieldArgs = { name: DynamicFieldName; }; /** Interface implemented by types that represent a Move object on-chain (A Move value whose type has `key`). */ export type IMoveObjectMultiGetDynamicFieldsArgs = { keys: Array; }; /** Interface implemented by types that represent a Move object on-chain (A Move value whose type has `key`). */ export type IMoveObjectMultiGetDynamicObjectFieldsArgs = { keys: Array; }; /** Interface implemented by versioned on-chain values that are addressable by an ID (also referred to as its address). This includes Move objects and packages. */ export type IObject = { /** 32-byte hash that identifies the object's contents, encoded in Base58. */ digest?: Maybe; /** Fetch the object with the same ID, at a different version, root version bound, or checkpoint. */ objectAt?: Maybe; /** The Base64-encoded BCS serialization of this object, as an `Object`. */ objectBcs?: Maybe; /** Paginate all versions of this object after this one. */ objectVersionsAfter?: Maybe; /** Paginate all versions of this object before this one. */ objectVersionsBefore?: Maybe; /** The object's owner kind. */ owner?: Maybe; /** The transaction that created this version of the object */ previousTransaction?: Maybe; /** The transactions that sent objects to this object. */ receivedTransactions?: Maybe; /** The SUI returned to the sponsor or sender of the transaction that modifies or deletes this object. */ storageRebate?: Maybe; /** The version of this object that this content comes from. */ version?: Maybe; }; /** Interface implemented by versioned on-chain values that are addressable by an ID (also referred to as its address). This includes Move objects and packages. */ export type IObjectObjectAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; version?: InputMaybe; }; /** Interface implemented by versioned on-chain values that are addressable by an ID (also referred to as its address). This includes Move objects and packages. */ export type IObjectObjectVersionsAfterArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** Interface implemented by versioned on-chain values that are addressable by an ID (also referred to as its address). This includes Move objects and packages. */ export type IObjectObjectVersionsBeforeArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** Interface implemented by versioned on-chain values that are addressable by an ID (also referred to as its address). This includes Move objects and packages. */ export type IObjectReceivedTransactionsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** Object is accessible to all addresses, and is immutable. */ export type Immutable = { __typename?: 'Immutable'; _?: Maybe; }; export type Input = { __typename?: 'Input'; /** The index of the input. */ ix?: Maybe; }; /** Information used by a package to link to a specific version of its dependency. */ export type Linkage = { __typename?: 'Linkage'; /** The ID on-chain of the first version of the dependency. */ originalId?: Maybe; /** The ID on-chain of the version of the dependency that this package depends on. */ upgradedId?: Maybe; /** The version of the dependency that this package depends on. */ version?: Maybe; }; /** Create a vector (can be empty). */ export type MakeMoveVecCommand = { __typename?: 'MakeMoveVecCommand'; /** The values to pack into the vector, all of the same type. */ elements?: Maybe>; /** If the elements are not objects, or the vector is empty, a type must be supplied. */ type?: Maybe; }; /** Merges `coins` into the first `coin` (produces no results). */ export type MergeCoinsCommand = { __typename?: 'MergeCoinsCommand'; /** The coin to merge into. */ coin?: Maybe; /** The coins to be merged. */ coins: Array; }; /** Abilities are keywords in Sui Move that define how types behave at the compiler level. */ export enum MoveAbility { /** Enables values to be copied. */ Copy = 'COPY', /** Enables values to be popped/dropped. */ Drop = 'DROP', /** Enables values to be held directly in global storage. */ Key = 'KEY', /** Enables values to be held inside a struct in global storage. */ Store = 'STORE' } export type MoveCallCommand = { __typename?: 'MoveCallCommand'; /** The actual function parameters passed in for this move call. */ arguments: Array; /** The function being called. */ function: MoveFunction; }; /** Description of a datatype, defined in a Move module. */ export type MoveDatatype = IMoveDatatype & { __typename?: 'MoveDatatype'; /** Abilities on this datatype definition. */ abilities?: Maybe>; /** Attempts to convert the `MoveDatatype` to a `MoveEnum`. */ asMoveEnum?: Maybe; /** Attempts to convert the `MoveDatatype` to a `MoveStruct`. */ asMoveStruct?: Maybe; /** The datatype's fully-qualified name, including package address, module name, and datatype name. */ fullyQualifiedName: Scalars['String']['output']; /** The module that this datatype is defined in. */ module: MoveModule; /** The datatype's unqualified name. */ name: Scalars['String']['output']; /** * Constraints on the datatype's formal type parameters. * * Move bytecode does not name type parameters, so when they are referenced (e.g. in field types), they are identified by their index in this list. */ typeParameters?: Maybe>; }; export type MoveDatatypeConnection = { __typename?: 'MoveDatatypeConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type MoveDatatypeEdge = { __typename?: 'MoveDatatypeEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: MoveDatatype; }; /** Declaration of a type parameter on a Move struct. */ export type MoveDatatypeTypeParameter = { __typename?: 'MoveDatatypeTypeParameter'; /** Ability constraints on this type parameter. */ constraints: Array; /** * Whether this type parameter is marked `phantom` or not. * * Phantom type parameters are not referenced in the struct's fields. */ isPhantom: Scalars['Boolean']['output']; }; /** Description of an enum type, defined in a Move module. */ export type MoveEnum = IMoveDatatype & { __typename?: 'MoveEnum'; /** Abilities on this enum definition. */ abilities?: Maybe>; /** The enum's fully-qualified name, including package address, module name, and datatype name. */ fullyQualifiedName: Scalars['String']['output']; /** The module that this enum is defined in. */ module: MoveModule; /** The enum's unqualified name. */ name: Scalars['String']['output']; /** * Constraints on the enum's formal type parameters. * * Move bytecode does not name type parameters, so when they are referenced (e.g. in field types), they are identified by their index in this list. */ typeParameters?: Maybe>; /** * The names and fields of the enum's variants * * Field types reference type parameters by their index in the defining enum's `typeParameters` list. */ variants?: Maybe>; }; export type MoveEnumConnection = { __typename?: 'MoveEnumConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type MoveEnumEdge = { __typename?: 'MoveEnumEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: MoveEnum; }; export type MoveEnumVariant = { __typename?: 'MoveEnumVariant'; /** * The names and types of the variant's fields. * * Field types reference type parameters by their index in the defining struct's `typeParameters` list. */ fields?: Maybe>; /** The variant's name. */ name?: Maybe; }; export type MoveField = { __typename?: 'MoveField'; /** The field's name. */ name?: Maybe; /** * The field's type. * * This type can reference type parameters introduced by the defining struct (see `typeParameters`). */ type?: Maybe; }; /** A function defined in a Move module. */ export type MoveFunction = { __typename?: 'MoveFunction'; /** The function's fully-qualified name, including package address, module name, and function name. */ fullyQualifiedName: Scalars['String']['output']; /** Whether the function is marked `entry` or not. */ isEntry?: Maybe; /** The module that this function is defined in. */ module: MoveModule; /** The function's unqualified name. */ name: Scalars['String']['output']; /** The function's parameter types. These types can reference type parameters introduced by this function (see `typeParameters`). */ parameters?: Maybe>; /** The function's return types. There can be multiple because functions in Move can return multiple values. These types can reference type parameters introduced by this function (see `typeParameters`). */ return?: Maybe>; /** * Constraints on the function's formal type parameters. * * Move bytecode does not name type parameters, so when they are referenced (e.g. in parameter and return types), they are identified by their index in this list. */ typeParameters?: Maybe>; /** The function's visibility: `public`, `public(friend)`, or `private`. */ visibility?: Maybe; }; export type MoveFunctionConnection = { __typename?: 'MoveFunctionConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type MoveFunctionEdge = { __typename?: 'MoveFunctionEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: MoveFunction; }; /** Declaration of a type parameter on a Move function. */ export type MoveFunctionTypeParameter = { __typename?: 'MoveFunctionTypeParameter'; /** Ability constraints on this type parameter. */ constraints: Array; }; /** * Modules are a unit of code organization in Move. * * Modules belong to packages, and contain type and function definitions. */ export type MoveModule = { __typename?: 'MoveModule'; /** Base64 encoded bytes of the serialized CompiledModule. */ bytes?: Maybe; /** The datatype (struct or enum) named `name` in this module. */ datatype?: Maybe; /** Paginate through this module's datatype definitions. */ datatypes?: Maybe; /** Textual representation of the module's bytecode. */ disassembly?: Maybe; /** The enum named `name` in this module. */ enum?: Maybe; /** Paginate through this module's enum definitions. */ enums?: Maybe; /** Bytecode format version. */ fileFormatVersion?: Maybe; /** Modules that this module considers friends. These modules can call `public(package)` functions in this module. */ friends?: Maybe; /** The module's fully-qualified name, including its package address. */ fullyQualifiedName: Scalars['String']['output']; /** The function named `name` in this module. */ function?: Maybe; /** Paginate through this module's function definitions. */ functions?: Maybe; /** The module's unqualified name. */ name: Scalars['String']['output']; /** The package that this module was defined in. */ package?: Maybe; /** The struct named `name` in this module. */ struct?: Maybe; /** Paginate through this module's struct definitions. */ structs?: Maybe; }; /** * Modules are a unit of code organization in Move. * * Modules belong to packages, and contain type and function definitions. */ export type MoveModuleDatatypeArgs = { name: Scalars['String']['input']; }; /** * Modules are a unit of code organization in Move. * * Modules belong to packages, and contain type and function definitions. */ export type MoveModuleDatatypesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Modules are a unit of code organization in Move. * * Modules belong to packages, and contain type and function definitions. */ export type MoveModuleEnumArgs = { name: Scalars['String']['input']; }; /** * Modules are a unit of code organization in Move. * * Modules belong to packages, and contain type and function definitions. */ export type MoveModuleEnumsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Modules are a unit of code organization in Move. * * Modules belong to packages, and contain type and function definitions. */ export type MoveModuleFriendsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Modules are a unit of code organization in Move. * * Modules belong to packages, and contain type and function definitions. */ export type MoveModuleFunctionArgs = { name: Scalars['String']['input']; }; /** * Modules are a unit of code organization in Move. * * Modules belong to packages, and contain type and function definitions. */ export type MoveModuleFunctionsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * Modules are a unit of code organization in Move. * * Modules belong to packages, and contain type and function definitions. */ export type MoveModuleStructArgs = { name: Scalars['String']['input']; }; /** * Modules are a unit of code organization in Move. * * Modules belong to packages, and contain type and function definitions. */ export type MoveModuleStructsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type MoveModuleConnection = { __typename?: 'MoveModuleConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type MoveModuleEdge = { __typename?: 'MoveModuleEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: MoveModule; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObject = IAddressable & IMoveObject & IObject & Node & { __typename?: 'MoveObject'; /** The MoveObject's ID. */ address: Scalars['SuiAddress']['output']; /** * Fetch the address as it was at a different root version, or checkpoint. * * If no additional bound is provided, the address is fetched at the latest checkpoint known to the RPC. */ addressAt?: Maybe
; /** Attempts to convert the object into a CoinMetadata. */ asCoinMetadata?: Maybe; /** Attempts to convert the object into a DynamicField. */ asDynamicField?: Maybe; /** * Fetch the total balance for coins with marker type `coinType` (e.g. `0x2::sui::SUI`), owned by this address. * * If the address does not own any coins of that type, a balance of zero is returned. */ balance?: Maybe; /** Total balance across coins owned by this address, grouped by coin type. */ balances?: Maybe; /** The structured representation of the object's contents. */ contents?: Maybe; /** The domain explicitly configured as the default Name Service name for this address. */ defaultNameRecord?: Maybe; /** 32-byte hash that identifies the object's contents, encoded in Base58. */ digest?: Maybe; /** * Access a dynamic field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic field with that name could not be found attached to this object. */ dynamicField?: Maybe; /** * Dynamic fields owned by this object. * * Dynamic fields on wrapped objects can be accessed using `Address.dynamicFields`. */ dynamicFields?: Maybe; /** * Access a dynamic object field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic object field with that name could not be found attached to this object. */ dynamicObjectField?: Maybe; /** * Whether this object can be transfered using the `TransferObjects` Programmable Transaction Command or `sui::transfer::public_transfer`. * * Both these operations require the object to have both the `key` and `store` abilities. */ hasPublicTransfer?: Maybe; /** The Move object's globally unique identifier, which can be passed to `Query.node` to refetch it. */ id: Scalars['ID']['output']; /** The Base64-encoded BCS serialize of this object, as a `MoveObject`. */ moveObjectBcs?: Maybe; /** * Fetch the total balances keyed by coin types (e.g. `0x2::sui::SUI`) owned by this address. * * If the address does not own any coins of a given type, a balance of zero is returned for that type. */ multiGetBalances?: Maybe>; /** * Access dynamic fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic fields that is guaranteed to be the same length as `keys`. If a dynamic field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicFields: Array>; /** * Access dynamic object fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic object fields that is guaranteed to be the same length as `keys`. If a dynamic object field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicObjectFields: Array>; /** * Fetch the object with the same ID, at a different version, root version bound, or checkpoint. * * If no additional bound is provided, the latest version of this object is fetched at the latest checkpoint. */ objectAt?: Maybe; /** The Base64-encoded BCS serialization of this object, as an `Object`. */ objectBcs?: Maybe; /** Paginate all versions of this object after this one. */ objectVersionsAfter?: Maybe; /** Paginate all versions of this object before this one. */ objectVersionsBefore?: Maybe; /** Objects owned by this object, optionally filtered by type. */ objects?: Maybe; /** The object's owner kind. */ owner?: Maybe; /** The transaction that created this version of the object. */ previousTransaction?: Maybe; /** The transactions that sent objects to this object. */ receivedTransactions?: Maybe; /** The SUI returned to the sponsor or sender of the transaction that modifies or deletes this object. */ storageRebate?: Maybe; /** The version of this object that this content comes from. */ version?: Maybe; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectAddressAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectBalanceArgs = { coinType: Scalars['String']['input']; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectBalancesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectDynamicFieldArgs = { name: DynamicFieldName; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectDynamicFieldsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectDynamicObjectFieldArgs = { name: DynamicFieldName; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectMultiGetBalancesArgs = { keys: Array; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectMultiGetDynamicFieldsArgs = { keys: Array; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectMultiGetDynamicObjectFieldsArgs = { keys: Array; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectObjectAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; version?: InputMaybe; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectObjectVersionsAfterArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectObjectVersionsBeforeArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectObjectsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MoveObject is a kind of Object that reprsents data stored on-chain. */ export type MoveObjectReceivedTransactionsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type MoveObjectConnection = { __typename?: 'MoveObjectConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type MoveObjectEdge = { __typename?: 'MoveObjectEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: MoveObject; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackage = IAddressable & IObject & Node & { __typename?: 'MovePackage'; /** The MovePackage's ID. */ address: Scalars['SuiAddress']['output']; /** * Fetch the address as it was at a different root version, or checkpoint. * * If no additional bound is provided, the address is fetched at the latest checkpoint known to the RPC. */ addressAt?: Maybe
; /** * Fetch the total balance for coins with marker type `coinType` (e.g. `0x2::sui::SUI`), owned by this address. * * If the address does not own any coins of that type, a balance of zero is returned. */ balance?: Maybe; /** Total balance across coins owned by this address, grouped by coin type. */ balances?: Maybe; /** The domain explicitly configured as the default Name Service name for this address. */ defaultNameRecord?: Maybe; /** 32-byte hash that identifies the package's contents, encoded in Base58. */ digest?: Maybe; /** The package's globally unique identifier, which can be passed to `Query.node` to refetch it. */ id: Scalars['ID']['output']; /** The transitive dependencies of this package. */ linkage?: Maybe>; /** The module named `name` in this package. */ module?: Maybe; /** BCS representation of the package's modules. Modules appear as a sequence of pairs (module name, followed by module bytes), in alphabetic order by module name. */ moduleBcs?: Maybe; /** Paginate through this package's modules. */ modules?: Maybe; /** * Fetch the total balances keyed by coin types (e.g. `0x2::sui::SUI`) owned by this address. * * If the address does not own any coins of a given type, a balance of zero is returned for that type. */ multiGetBalances?: Maybe>; /** * Fetch the package as an object with the same ID, at a different version, root version bound, or checkpoint. * * If no additional bound is provided, the latest version of this object is fetched at the latest checkpoint. */ objectAt?: Maybe; /** The Base64-encoded BCS serialization of this package, as an `Object`. */ objectBcs?: Maybe; /** Paginate all versions of this package treated as an object, after this one. */ objectVersionsAfter?: Maybe; /** Paginate all versions of this package treated as an object, before this one. */ objectVersionsBefore?: Maybe; /** Objects owned by this package, optionally filtered by type. */ objects?: Maybe; /** The object's owner kind. */ owner?: Maybe; /** * Fetch the package with the same original ID, at a different version, or checkpoint. * * If no additional bound is provided, the package is fetched at the latest checkpoint known to the RPC. */ packageAt?: Maybe; /** The Base64-encoded BCS serialization of this package, as a `MovePackage`. */ packageBcs?: Maybe; /** Paginate all versions of this package after this one. */ packageVersionsAfter?: Maybe; /** Paginate all versions of this package before this one. */ packageVersionsBefore?: Maybe; /** The transaction that created this version of the object. */ previousTransaction?: Maybe; /** The transactions that sent objects to this object. */ receivedTransactions?: Maybe; /** The SUI returned to the sponsor or sender of the transaction that modifies or deletes this object. */ storageRebate?: Maybe; /** A table identifying which versions of a package introduced each of its types. */ typeOrigins?: Maybe>; /** The version of this package that this content comes from. */ version?: Maybe; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackageAddressAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackageBalanceArgs = { coinType: Scalars['String']['input']; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackageBalancesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackageModuleArgs = { name: Scalars['String']['input']; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackageModulesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackageMultiGetBalancesArgs = { keys: Array; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackageObjectAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; version?: InputMaybe; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackageObjectVersionsAfterArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackageObjectVersionsBeforeArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackageObjectsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackagePackageAtArgs = { checkpoint?: InputMaybe; version?: InputMaybe; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackagePackageVersionsAfterArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackagePackageVersionsBeforeArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A MovePackage is a kind of Object that represents code that has been published on-chain. It exposes information about its modules, type definitions, functions, and dependencies. */ export type MovePackageReceivedTransactionsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type MovePackageConnection = { __typename?: 'MovePackageConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type MovePackageEdge = { __typename?: 'MovePackageEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: MovePackage; }; /** Description of a struct type, defined in a Move module. */ export type MoveStruct = IMoveDatatype & { __typename?: 'MoveStruct'; /** Abilities on this struct definition. */ abilities?: Maybe>; /** * The names and types of the struct's fields. * * Field types reference type parameters by their index in the defining struct's `typeParameters` list. */ fields?: Maybe>; /** The struct's fully-qualified name, including package address, module name, and datatype name. */ fullyQualifiedName: Scalars['String']['output']; /** The module that this struct is defined in. */ module: MoveModule; /** The struct's unqualified name. */ name: Scalars['String']['output']; /** * Constraints on the struct's formal type parameters. * * Move bytecode does not name type parameters, so when they are referenced (e.g. in field types), they are identified by their index in this list. */ typeParameters?: Maybe>; }; export type MoveStructConnection = { __typename?: 'MoveStructConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type MoveStructEdge = { __typename?: 'MoveStructEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: MoveStruct; }; /** Represents instances of concrete types (no type parameters, no references). */ export type MoveType = { __typename?: 'MoveType'; /** The abilities this concrete type has. Returns no abilities if the type is invalid. */ abilities?: Maybe>; /** * Structured representation of the "shape" of values that match this type. May return no * layout if the type is invalid. */ layout?: Maybe; /** Flat representation of the type signature, as a displayable string. */ repr: Scalars['String']['output']; /** Structured representation of the type signature. */ signature: Scalars['MoveTypeSignature']['output']; }; export type MoveValue = { __typename?: 'MoveValue'; /** * Attempts to treat this value as an `Address`. * * If the value is of type `address` or `0x2::object::ID`, it is interpreted as an address pointer, and it is scoped to the current checkpoint. * * If the value is of type `0x2::object::UID`, it is interpreted as a wrapped object whose version is bounded by the root version of the current value. Such values do not support nested owned object queries, but `Address.addressAt` can be used to re-scope it to a checkpoint (defaults to the current checkpoint), instead of a root version, allowing owned object queries. * * Values of other types cannot be interpreted as addresses, and `null` is returned. */ asAddress?: Maybe
; /** * Attempts to treat this value as a `vector` and paginate over its elements. * * Values of other types cannot be interpreted as vectors, and `null` is returned. */ asVector?: Maybe; /** The BCS representation of this value, Base64-encoded. */ bcs?: Maybe; /** * A rendered JSON blob based on an on-chain template, substituted with data from this value. * * Returns `null` if the value's type does not have an associated `Display` template. */ display?: Maybe; /** * Extract a nested value at the given path. * * `path` is a Display v2 'chain' expression, allowing access to nested, named and positional fields, vector indices, VecMap keys, and dynamic (object) field accesses. */ extract?: Maybe; /** * Render a single Display v2 format string against this value. * * Returns `null` if the value does not have a valid type, or if any of the expressions in the format string fail to evaluate (e.g. field does not exist). */ format?: Maybe; /** * Representation of a Move value in JSON, where: * * - Addresses, IDs, and UIDs are represented in canonical form, as JSON strings. * - Bools are represented by JSON boolean literals. * - u8, u16, and u32 are represented as JSON numbers. * - u64, u128, and u256 are represented as JSON strings. * - Balances, Strings, and Urls are represented as JSON strings. * - Vectors of bytes are represented as Base64 blobs, and other vectors are represented by JSON arrays. * - Structs are represented by JSON objects. * - Enums are represented by JSON objects, with a field named `@variant` containing the variant name. * - Empty optional values are represented by `null`. */ json?: Maybe; /** The value's type. */ type?: Maybe; }; export type MoveValueAsVectorArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type MoveValueExtractArgs = { path: Scalars['String']['input']; }; export type MoveValueFormatArgs = { format: Scalars['String']['input']; }; export type MoveValueConnection = { __typename?: 'MoveValueConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type MoveValueEdge = { __typename?: 'MoveValueEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: MoveValue; }; /** * The visibility modifier describes which modules can access this module member. * * By default, a module member can be called only within the same module. */ export enum MoveVisibility { /** A friend member can be accessed in the module it is defined in and any other module in its package that is explicitly specified in its friend list. */ Friend = 'FRIEND', /** A private member can be accessed in the module it is defined in. */ Private = 'PRIVATE', /** A public member can be accessed by any module. */ Public = 'PUBLIC' } /** The multisig committee definition. */ export type MultisigCommittee = { __typename?: 'MultisigCommittee'; /** The committee members (public key + weight). */ members?: Maybe>; /** The threshold number of weight needed for a valid multisig. */ threshold?: Maybe; }; /** A single member of a multisig committee. */ export type MultisigMember = { __typename?: 'MultisigMember'; /** The member's public key. */ publicKey?: Maybe; /** The member's weight in the committee. */ weight?: Maybe; }; /** A multisig member's public key, varying by scheme. */ export type MultisigMemberPublicKey = Ed25519PublicKey | PasskeyPublicKey | Secp256K1PublicKey | Secp256R1PublicKey | ZkLoginPublicIdentifier; /** An aggregated multisig signature. */ export type MultisigSignature = { __typename?: 'MultisigSignature'; /** A bitmap indicating which members of the committee signed. */ bitmap?: Maybe; /** The multisig committee (public keys + weights + threshold). */ committee?: Maybe; /** * The individual member signatures, one per signer who participated. * Compressed signatures within a multisig do not include the signer's public key, * so `publicKey` will be `null` for simple signature schemes (Ed25519, Secp256k1, Secp256r1). */ signatures?: Maybe>; }; /** A transaction that wanted to mutate a consensus-managed object but couldn't because it became not-consensus-managed before the transaction executed (for example, it was deleted, turned into an owned object, or wrapped). */ export type MutateConsensusStreamEnded = { __typename?: 'MutateConsensusStreamEnded'; /** The ID of the consensus-managed object. */ address?: Maybe; /** The sequence number associated with the consensus stream ending. */ sequenceNumber?: Maybe; }; /** Mutations are used to write to the Sui network. */ export type Mutation = { __typename?: 'Mutation'; /** * Execute a transaction, committing its effects on chain. * * - `transactionDataBcs` contains the BCS-encoded transaction data (Base64-encoded). * - `signatures` are a list of `flag || signature || pubkey` bytes, Base64-encoded. * * Waits until the transaction has reached finality on chain to return its transaction digest, or returns the error that prevented finality if that was not possible. A transaction is final when its effects are guaranteed on chain (it cannot be revoked). * * There may be a delay between transaction finality and when GraphQL requests (including the request that issued the transaction) reflect its effects. As a result, queries that depend on indexing the state of the chain (e.g. contents of output objects, address-level balance information at the time of the transaction), must wait for indexing to catch up by polling for the transaction digest using `Query.transaction`. */ executeTransaction: ExecutionResult; }; /** Mutations are used to write to the Sui network. */ export type MutationExecuteTransactionArgs = { signatures: Array; transactionDataBcs: Scalars['Base64']['input']; }; /** A Name Service NameRecord representing a domain name registration. */ export type NameRecord = { __typename?: 'NameRecord'; /** On-chain representation of the underlying Name Service `NameRecord` Move value. */ contents: MoveValue; /** The domain name this record is for. */ domain: Scalars['String']['output']; /** * The Name Service Name Record of the parent domain, if this is a subdomain. * * Returns `null` if this is not a subdomain. */ parent?: Maybe; /** * The address this domain points to. * * `rootVersion` and `atCheckpoint` control how the target `Address` is scoped. If neither is provided, the `Address` is scoped to the latest checkpoint known to the RPC. */ target?: Maybe
; }; /** A Name Service NameRecord representing a domain name registration. */ export type NameRecordTargetArgs = { atCheckpoint?: InputMaybe; rootVersion?: InputMaybe; }; /** An interface implemented by types that can be uniquely identified by a globally unique `ID`, following the GraphQL Global Object Identification specification. */ export type Node = { /** The node's globally unique identifier, which can be passed to `Query.node` to refetch it. */ id: Scalars['ID']['output']; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type Object = IAddressable & IObject & Node & { __typename?: 'Object'; /** The Object's ID. */ address: Scalars['SuiAddress']['output']; /** * Fetch the address as it was at a different root version, or checkpoint. * * If no additional bound is provided, the address is fetched at the latest checkpoint known to the RPC. */ addressAt?: Maybe
; /** Attempts to convert the object into a MoveObject. */ asMoveObject?: Maybe; /** Attempts to convert the object into a MovePackage. */ asMovePackage?: Maybe; /** * Fetch the total balance for coins with marker type `coinType` (e.g. `0x2::sui::SUI`), owned by this address. * * If the address does not own any coins of that type, a balance of zero is returned. */ balance?: Maybe; /** Total balance across coins owned by this address, grouped by coin type. */ balances?: Maybe; /** The domain explicitly configured as the default Name Service name for this address. */ defaultNameRecord?: Maybe; /** 32-byte hash that identifies the object's contents, encoded in Base58. */ digest?: Maybe; /** * Access a dynamic field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic field with that name could not be found attached to this object. */ dynamicField?: Maybe; /** Dynamic fields owned by this object. */ dynamicFields?: Maybe; /** * Access a dynamic object field on an object using its type and BCS-encoded name. * * Returns `null` if a dynamic object field with that name could not be found attached to this object. */ dynamicObjectField?: Maybe; /** The object's globally unique identifier, which can be passed to `Query.node` to refetch it. */ id: Scalars['ID']['output']; /** * Fetch the total balances keyed by coin types (e.g. `0x2::sui::SUI`) owned by this address. * * Returns `None` when no checkpoint is set in scope (e.g. execution scope). * If the address does not own any coins of a given type, a balance of zero is returned for that type. */ multiGetBalances?: Maybe>; /** * Access dynamic fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic fields that is guaranteed to be the same length as `keys`. If a dynamic field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicFields: Array>; /** * Access dynamic object fields on an object using their types and BCS-encoded names. * * Returns a list of dynamic object fields that is guaranteed to be the same length as `keys`. If a dynamic object field in `keys` could not be found in the store, its corresponding entry in the result will be `null`. */ multiGetDynamicObjectFields: Array>; /** * Fetch the object with the same ID, at a different version, root version bound, or checkpoint. * * If no additional bound is provided, the object is fetched at the latest checkpoint known to the RPC. */ objectAt?: Maybe; /** The Base64-encoded BCS serialization of this object, as an `Object`. */ objectBcs?: Maybe; /** Paginate all versions of this object after this one. */ objectVersionsAfter?: Maybe; /** Paginate all versions of this object before this one. */ objectVersionsBefore?: Maybe; /** Objects owned by this object, optionally filtered by type. */ objects?: Maybe; /** The object's owner kind. */ owner?: Maybe; /** The transaction that created this version of the object. */ previousTransaction?: Maybe; /** The transactions that sent objects to this object */ receivedTransactions?: Maybe; /** The SUI returned to the sponsor or sender of the transaction that modifies or deletes this object. */ storageRebate?: Maybe; /** The version of this object that this content comes from. */ version?: Maybe; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectAddressAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectBalanceArgs = { coinType: Scalars['String']['input']; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectBalancesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectDynamicFieldArgs = { name: DynamicFieldName; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectDynamicFieldsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectDynamicObjectFieldArgs = { name: DynamicFieldName; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectMultiGetBalancesArgs = { keys: Array; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectMultiGetDynamicFieldsArgs = { keys: Array; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectMultiGetDynamicObjectFieldsArgs = { keys: Array; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectObjectAtArgs = { checkpoint?: InputMaybe; rootVersion?: InputMaybe; version?: InputMaybe; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectObjectVersionsAfterArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectObjectVersionsBeforeArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectObjectsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** * An Object on Sui is either a typed value (a Move Object) or a Package (modules containing functions and types). * * Every object on Sui is identified by a unique address, and has a version number that increases with every modification. Objects also hold metadata detailing their current owner (who can sign for access to the object and whether that access can modify and/or delete the object), and the digest of the last transaction that modified the object. */ export type ObjectReceivedTransactionsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type ObjectChange = { __typename?: 'ObjectChange'; /** The address of the object that has changed. */ address: Scalars['SuiAddress']['output']; /** Whether the ID was created in this transaction. */ idCreated?: Maybe; /** Whether the ID was deleted in this transaction. */ idDeleted?: Maybe; /** The contents of the object immediately before the transaction. */ inputState?: Maybe; /** The contents of the object immediately after the transaction. */ outputState?: Maybe; }; export type ObjectChangeConnection = { __typename?: 'ObjectChangeConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type ObjectChangeEdge = { __typename?: 'ObjectChangeEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: ObjectChange; }; export type ObjectConnection = { __typename?: 'ObjectConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type ObjectEdge = { __typename?: 'ObjectEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: Object; }; /** * A filter over the live object set, the filter can be one of: * * - A filter on type (all live objects whose type matches that filter). * - Fetching all objects owned by an address or object, optionally filtered by type. * - Fetching all shared or immutable objects, filtered by type. */ export type ObjectFilter = { /** * Specifies the address of the owning address or object. * * This field is required if `ownerKind` is "ADDRESS" or "OBJECT". If provided without `ownerKind`, `ownerKind` defaults to "ADDRESS". */ owner?: InputMaybe; /** * Filter on whether the object is address-owned, object-owned, shared, or immutable. * * - If this field is set to "ADDRESS" or "OBJECT", then an owner filter must also be provided. * - If this field is set to "SHARED" or "IMMUTABLE", then a type filter must also be provided. */ ownerKind?: InputMaybe; /** * Filter on the object's type. * * The filter can be one of: * * - A package address: `0x2`, * - A module: `0x2::coin`, * - A fully-qualified name: `0x2::coin::Coin`, * - A type instantiation: `0x2::coin::Coin<0x2::sui::SUI>`. */ type?: InputMaybe; }; /** * Identifies a specific version of an object. * * The `address` field must be specified, as well as at most one of `version`, `rootVersion`, or `atCheckpoint`. If none are provided, the object is fetched at the current checkpoint. * * Specifying a `version` or a `rootVersion` disables nested queries for paginating owned objects or dynamic fields (these queries are only supported at checkpoint boundaries). * * See `Query.object` for more details. */ export type ObjectKey = { /** The object's ID. */ address: Scalars['SuiAddress']['input']; /** If specified, tries to fetch the latest version as of this checkpoint. Fails if the checkpoint is later than the RPC's latest checkpoint. */ atCheckpoint?: InputMaybe; /** * If specified, tries to fetch the latest version of the object at or before this version. Nested dynamic field accesses will also be subject to this bound. * * This can be used to fetch a child or ancestor object bounded by its root object's version. For any wrapped or child (object-owned) object, its root object can be defined recursively as: * * - The root object of the object it is wrapped in, if it is wrapped. * - The root object of its owner, if it is owned by another object. * - The object itself, if it is not object-owned or wrapped. */ rootVersion?: InputMaybe; /** If specified, tries to fetch the object at this exact version. */ version?: InputMaybe; }; /** Object is exclusively owned by a single object, and is mutable. Note that the owning object may be inaccessible because it is wrapped. */ export type ObjectOwner = { __typename?: 'ObjectOwner'; /** The owner's address. */ address?: Maybe
; }; /** * Represents types that could contain references or free type parameters. Such types can appear * as function parameters, in fields of structs, or as actual type parameter. */ export type OpenMoveType = { __typename?: 'OpenMoveType'; /** Flat representation of the type signature, as a displayable string. */ repr: Scalars['String']['output']; /** Structured representation of the type signature. */ signature: Scalars['OpenMoveTypeSignature']['output']; }; /** Placeholder for unimplemented command types */ export type OtherCommand = { __typename?: 'OtherCommand'; /** Placeholder field for unimplemented commands */ _?: Maybe; }; /** A Move object, either immutable, or owned mutable. */ export type OwnedOrImmutable = { __typename?: 'OwnedOrImmutable'; object?: Maybe; }; /** The object's owner kind. */ export type Owner = AddressOwner | ConsensusAddressOwner | Immutable | ObjectOwner | Shared; /** Filter on who owns an object. */ export enum OwnerKind { /** Object is owned by an address. */ Address = 'ADDRESS', /** Object is frozen. */ Immutable = 'IMMUTABLE', /** Object is a child of another object (e.g. a dynamic field or dynamic object field). */ Object = 'OBJECT', /** Object is shared among multiple owners. */ Shared = 'SHARED' } /** Filter for paginating packages published within a range of checkpoints. */ export type PackageCheckpointFilter = { /** Filter to packages that were published strictly after this checkpoint, defaults to fetching from the earliest checkpoint known to this RPC (this could be the genesis checkpoint, or some later checkpoint if data has been pruned). */ afterCheckpoint?: InputMaybe; /** Filter to packages published strictly before this checkpoint, defaults to fetching up to the latest checkpoint (inclusive). */ beforeCheckpoint?: InputMaybe; }; /** * Identifies a specific version of a package. * * The `address` field must be specified, as well as at most one of `version`, or `atCheckpoint`. If neither is provided, the package is fetched at the checkpoint being viewed. * * See `Query.package` for more details. */ export type PackageKey = { /** The object's ID. */ address: Scalars['SuiAddress']['input']; /** If specified, tries to fetch the latest version as of this checkpoint. */ atCheckpoint?: InputMaybe; /** If specified, tries to fetch the package at this exact version. */ version?: InputMaybe; }; /** Information about pagination in a connection */ export type PageInfo = { __typename?: 'PageInfo'; /** When paginating forwards, the cursor to continue. */ endCursor?: Maybe; /** When paginating forwards, are there more items? */ hasNextPage: Scalars['Boolean']['output']; /** When paginating backwards, are there more items? */ hasPreviousPage: Scalars['Boolean']['output']; /** When paginating backwards, the cursor to continue. */ startCursor?: Maybe; }; /** A Passkey public key. */ export type PasskeyPublicKey = { __typename?: 'PasskeyPublicKey'; /** The raw public key bytes. */ bytes?: Maybe; }; export type PasskeySignature = { __typename?: 'PasskeySignature'; /** The authenticator data returned by the passkey device. */ authenticatorData?: Maybe; /** The client data JSON string passed to the authenticator. */ clientDataJson?: Maybe; /** The inner user signature (secp256r1). */ signature?: Maybe; }; export type PerEpochConfig = { __typename?: 'PerEpochConfig'; /** The per-epoch configuration object as of when the transaction was executed. */ object?: Maybe; }; /** ProgrammableSystemTransaction is identical to ProgrammableTransaction, but GraphQL does not allow multiple variants with the same type. */ export type ProgrammableSystemTransaction = { __typename?: 'ProgrammableSystemTransaction'; /** The transaction commands, executed sequentially. */ commands?: Maybe; /** Input objects or primitive values. */ inputs?: Maybe; }; /** ProgrammableSystemTransaction is identical to ProgrammableTransaction, but GraphQL does not allow multiple variants with the same type. */ export type ProgrammableSystemTransactionCommandsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** ProgrammableSystemTransaction is identical to ProgrammableTransaction, but GraphQL does not allow multiple variants with the same type. */ export type ProgrammableSystemTransactionInputsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type ProgrammableTransaction = { __typename?: 'ProgrammableTransaction'; /** The transaction commands, executed sequentially. */ commands?: Maybe; /** Input objects or primitive values. */ inputs?: Maybe; }; export type ProgrammableTransactionCommandsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type ProgrammableTransactionInputsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** A protocol configuration that can hold an arbitrary value (or no value at all). */ export type ProtocolConfig = { __typename?: 'ProtocolConfig'; /** Configuration name. */ key: Scalars['String']['output']; /** Configuration value. */ value?: Maybe; }; /** * Constants that control how the chain operates. * * These can only change during protocol upgrades which happen on epoch boundaries. Configuration is split into feature flags (which are just booleans), and configs which can take any value (including no value at all), and will be represented by a string. */ export type ProtocolConfigs = { __typename?: 'ProtocolConfigs'; /** Query for the value of the configuration with name `key`. */ config?: Maybe; /** List all available configurations and their values. */ configs: Array; /** Query for the state of the feature flag with name `key`. */ featureFlag?: Maybe; /** List all available feature flags and their values. */ featureFlags: Array; protocolVersion: Scalars['UInt53']['output']; }; /** * Constants that control how the chain operates. * * These can only change during protocol upgrades which happen on epoch boundaries. Configuration is split into feature flags (which are just booleans), and configs which can take any value (including no value at all), and will be represented by a string. */ export type ProtocolConfigsConfigArgs = { key: Scalars['String']['input']; }; /** * Constants that control how the chain operates. * * These can only change during protocol upgrades which happen on epoch boundaries. Configuration is split into feature flags (which are just booleans), and configs which can take any value (including no value at all), and will be represented by a string. */ export type ProtocolConfigsFeatureFlagArgs = { key: Scalars['String']['input']; }; /** Publishes a Move Package. */ export type PublishCommand = { __typename?: 'PublishCommand'; /** IDs of the transitive dependencies of the package to be published. */ dependencies?: Maybe>; /** Bytecode for the modules to be published, BCS serialized and Base64 encoded. */ modules?: Maybe>; }; /** BCS encoded primitive value (not an object or Move struct). */ export type Pure = { __typename?: 'Pure'; /** BCS serialized and Base64 encoded primitive value. */ bytes?: Maybe; }; export type Query = { __typename?: 'Query'; /** * Look-up an account by its SuiAddress. * * If `rootVersion` is specified, nested dynamic field accesses will be fetched at or before this version. This can be used to fetch a child or descendant object bounded by its root object's version, when its immediate parent is wrapped, or a value in a dynamic object field. For any wrapped or child (object-owned) object, its root object can be defined recursively as: * * - The root object of the object it is wrapped in, if it is wrapped. * - The root object of its owner, if it is owned by another object. * - The object itself, if it is not object-owned or wrapped. * * Specifying a `rootVersion` disables nested queries for paginating owned objects or dynamic fields (these queries are only supported at checkpoint boundaries). * * If `atCheckpoint` is specified, the address will be fetched at the latest version as of this checkpoint. This will fail if the provided checkpoint is after the RPC's latest checkpoint. * * If none of the above are specified, the address is fetched at the checkpoint being viewed. * * If the address is fetched by name and the name does not resolve to an address (e.g. the name does not exist or has expired), `null` is returned. */ address?: Maybe
; /** The network's genesis checkpoint digest (uniquely identifies the network), Base58-encoded. */ chainIdentifier: Scalars['String']['output']; /** * Fetch a checkpoint by its sequence number, or the latest checkpoint if no sequence number is provided. * * Returns `null` if the checkpoint does not exist in the store, either because it never existed or because it was pruned. */ checkpoint?: Maybe; /** Paginate checkpoints in the network, optionally bounded to checkpoints in the given epoch. */ checkpoints?: Maybe; /** * Fetch the CoinMetadata for a given coin type. * * Returns `null` if no CoinMetadata object exists for the given coin type. */ coinMetadata?: Maybe; /** * Fetch an epoch by its ID, or fetch the latest epoch if no ID is provided. * * Returns `null` if the epoch does not exist yet, or was pruned. */ epoch?: Maybe; /** Paginate epochs that are in the network. */ epochs?: Maybe; /** Paginate events that are emitted in the network, optionally filtered by event filters. */ events?: Maybe; /** * Fetch addresses by their keys. * * Returns a list of addresses that is guaranteed to be the same length as `keys`. If an address in `keys` is fetched by name and the name does not resolve to an address, its corresponding entry in the result will be `null`. */ multiGetAddresses: Array>; /** * Fetch checkpoints by their sequence numbers. * * Returns a list of checkpoints that is guaranteed to be the same length as `keys`. If a checkpoint in `keys` could not be found in the store, its corresponding entry in the result will be `null`. This could be because the checkpoint does not exist yet, or because it was pruned. */ multiGetCheckpoints: Array>; /** * Fetch epochs by their IDs. * * Returns a list of epochs that is guaranteed to be the same length as `keys`. If an epoch in `keys` could not be found in the store, its corresponding entry in the result will be `null`. This could be because the epoch does not exist yet, or because it was pruned. */ multiGetEpochs: Array>; /** * Fetch objects by their keys. * * Returns a list of objects that is guaranteed to be the same length as `keys`. If an object in `keys` could not be found in the store, its corresponding entry in the result will be `null`. This could be because the object never existed, or because it was pruned. */ multiGetObjects: Array>; /** * Fetch packages by their keys. * * Returns a list of packages that is guaranteed to be the same length as `keys`. If a package in `keys` could not be found in the store, its corresponding entry in the result will be `null`. This could be because that address never pointed to a package, or because the package was pruned. */ multiGetPackages: Array>; /** * Fetch transaction effects by their transactions' digests. * * Returns a list of transaction effects that is guaranteed to be the same length as `keys`. If a digest in `keys` could not be found in the store, its corresponding entry in the result will be `null`. This could be because the transaction effects never existed, or because it was pruned. */ multiGetTransactionEffects: Array>; /** * Fetch transactions by their digests. * * Returns a list of transactions that is guaranteed to be the same length as `keys`. If a digest in `keys` could not be found in the store, its corresponding entry in the result will be `null`. This could be because the transaction never existed, or because it was pruned. */ multiGetTransactions: Array>; /** * Fetch types by their string representations. * * Types are canonicalized: In the input they can be at any package address at or after the package that first defines them, and in the output they will be relocated to the package that first defines them. * * Returns a list of types that is guaranteed to be the same length as `keys`. If a type in `keys` could not be found, its corresponding entry in the result will be `null`. */ multiGetTypes: Array>; /** * Look-up a Name Service NameRecord by its domain name. * * Returns `null` if the record does not exist or has expired. */ nameRecord?: Maybe; /** Fetch a `Node` by its globally unique `ID`. Returns `null` if the node cannot be found (e.g., the underlying data was pruned or never existed). */ node?: Maybe; /** * Fetch an object by its address. * * If `version` is specified, the object will be fetched at that exact version. * * If `rootVersion` is specified, the object will be fetched at the latest version at or before this version. Nested dynamic field accesses will also be subject to this bound. This can be used to fetch a child or ancestor object bounded by its root object's version. For any wrapped or child (object-owned) object, its root object can be defined recursively as: * * - The root object of the object it is wrapped in, if it is wrapped. * - The root object of its owner, if it is owned by another object. * - The object itself, if it is not object-owned or wrapped. * * Specifying a `version` or a `rootVersion` disables nested queries for paginating owned objects or dynamic fields (these queries are only supported at checkpoint boundaries). * * If `atCheckpoint` is specified, the object will be fetched at the latest version as of this checkpoint. This will fail if the provided checkpoint is after the RPC's latest checkpoint. * * If none of the above are specified, the object is fetched at the checkpoint being viewed. * * It is an error to specify more than one of `version`, `rootVersion`, or `atCheckpoint`. * * Returns `null` if an object cannot be found that meets this criteria. */ object?: Maybe; /** Paginate all versions of an object at `address`, optionally bounding the versions exclusively from below with `filter.afterVersion` or from above with `filter.beforeVersion`. */ objectVersions?: Maybe; /** * Paginate objects in the live object set, optionally filtered by owner and/or type. `filter` can be one of: * * - A filter on type (all live objects whose type matches that filter). * - Fetching all objects owned by an address or object, optionally filtered by type. * - Fetching all shared or immutable objects, filtered by type. */ objects?: Maybe; /** * Fetch a package by its address. * * If `version` is specified, the package loaded is the one that shares its original ID with the package at `address`, but whose version is `version`. * * If `atCheckpoint` is specified, the package loaded is the one with the largest version among all packages sharing an original ID with the package at `address` and was published at or before `atCheckpoint`. * * If neither are specified, the package is fetched at the checkpoint being viewed. * * It is an error to specify both `version` and `atCheckpoint`, and `null` will be returned if the package cannot be found as of the latest checkpoint, or the address points to an object that is not a package. * * Note that this interpretation of `version` and "latest" differs from the one used by `Query.object`, because non-system package upgrades generate objects with different IDs. To fetch a package using the versioning semantics of objects, use `Object.asMovePackage` nested under `Query.object`. */ package?: Maybe; /** * Paginate all versions of a package at `address`, optionally bounding the versions exclusively from below with `filter.afterVersion` or from above with `filter.beforeVersion`. * * Different versions of a package will have different object IDs, unless they are system packages, but will share the same original ID. */ packageVersions?: Maybe; /** Paginate all packages published on-chain, optionally bounded to packages published strictly after `filter.afterCheckpoint` and/or strictly before `filter.beforeCheckpoint`. */ packages?: Maybe; /** Fetch the protocol config by protocol version, or the latest protocol config used on chain if no version is provided. */ protocolConfigs?: Maybe; /** Configuration for this RPC service. */ serviceConfig: ServiceConfig; /** * Simulate a transaction to preview its effects without executing it on chain. * * Accepts a JSON transaction matching the [Sui gRPC API schema](https://docs.sui.io/references/fullnode-protocol#sui-rpc-v2-Transaction). * The JSON format allows for partial transaction specification where certain fields can be automatically resolved by the server. * * Alternatively, for already serialized transactions, you can pass BCS-encoded data: * `{"bcs": {"value": ""}}` * * Unlike `executeTransaction`, this does not require signatures since the transaction is not committed to the blockchain. This allows for previewing transaction effects, estimating gas costs, and testing transaction logic without spending gas or requiring valid signatures. * * - `checksEnabled`: If true, enables transaction validation checks during simulation. Defaults to true. * - `doGasSelection`: If true, enables automatic gas coin selection and budget estimation. Defaults to false. */ simulateTransaction: SimulationResult; /** * Fetch a transaction by its digest. * * Returns `null` if the transaction does not exist in the store, either because it never existed or because it was pruned. */ transaction?: Maybe; /** * Fetch transaction effects by its transaction's digest. * * Returns `null` if the transaction effects do not exist in the store, either because that transaction was not executed, or it was pruned. */ transactionEffects?: Maybe; /** The transactions that exist in the network, optionally filtered by transaction filters. */ transactions?: Maybe; /** * Fetch a structured representation of a concrete type, including its layout information. * * Types are canonicalized: In the input they can be at any package address at or after the package that first defines them, and in the output they will be relocated to the package that first defines them. * * Fails if the type is malformed, returns `null` if a type mentioned does not exist. */ type?: Maybe; /** * Verify a zkLogin signature is from the given `author`. * * Returns successfully if the signature is valid. If the signature is invalid, returns an error with the reason for the failure. * * - `bytes` are either the bytes of a serialized personal message, or `TransactionData`, Base64-encoded. * - `signature` is a serialized zkLogin signature, also Base64-encoded. * - `intentScope` indicates whether `bytes` are to be parsed as a personal message or `TransactionData`. * - `author` is the signer's address. */ verifyZkLoginSignature?: Maybe; }; export type QueryAddressArgs = { address?: InputMaybe; atCheckpoint?: InputMaybe; name?: InputMaybe; rootVersion?: InputMaybe; }; export type QueryCheckpointArgs = { sequenceNumber?: InputMaybe; }; export type QueryCheckpointsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type QueryCoinMetadataArgs = { coinType: Scalars['String']['input']; }; export type QueryEpochArgs = { epochId?: InputMaybe; }; export type QueryEpochsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type QueryEventsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type QueryMultiGetAddressesArgs = { keys: Array; }; export type QueryMultiGetCheckpointsArgs = { keys: Array; }; export type QueryMultiGetEpochsArgs = { keys: Array; }; export type QueryMultiGetObjectsArgs = { keys: Array; }; export type QueryMultiGetPackagesArgs = { keys: Array; }; export type QueryMultiGetTransactionEffectsArgs = { keys: Array; }; export type QueryMultiGetTransactionsArgs = { keys: Array; }; export type QueryMultiGetTypesArgs = { keys: Array; }; export type QueryNameRecordArgs = { name: Scalars['String']['input']; }; export type QueryNodeArgs = { id: Scalars['ID']['input']; }; export type QueryObjectArgs = { address: Scalars['SuiAddress']['input']; atCheckpoint?: InputMaybe; rootVersion?: InputMaybe; version?: InputMaybe; }; export type QueryObjectVersionsArgs = { address: Scalars['SuiAddress']['input']; after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type QueryObjectsArgs = { after?: InputMaybe; before?: InputMaybe; filter: ObjectFilter; first?: InputMaybe; last?: InputMaybe; }; export type QueryPackageArgs = { address: Scalars['SuiAddress']['input']; atCheckpoint?: InputMaybe; version?: InputMaybe; }; export type QueryPackageVersionsArgs = { address: Scalars['SuiAddress']['input']; after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type QueryPackagesArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type QueryProtocolConfigsArgs = { version?: InputMaybe; }; export type QuerySimulateTransactionArgs = { checksEnabled?: InputMaybe; doGasSelection?: InputMaybe; transaction: Scalars['JSON']['input']; }; export type QueryTransactionArgs = { digest: Scalars['String']['input']; }; export type QueryTransactionEffectsArgs = { digest: Scalars['String']['input']; }; export type QueryTransactionsArgs = { after?: InputMaybe; before?: InputMaybe; filter?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type QueryTypeArgs = { type: Scalars['String']['input']; }; export type QueryVerifyZkLoginSignatureArgs = { author: Scalars['SuiAddress']['input']; bytes: Scalars['Base64']['input']; intentScope: ZkLoginIntentScope; signature: Scalars['Base64']['input']; }; /** System transaction for creating the on-chain randomness state. */ export type RandomnessStateCreateTransaction = { __typename?: 'RandomnessStateCreateTransaction'; /** A workaround to define an empty variant of a GraphQL union. */ _?: Maybe; }; /** System transaction to update the source of on-chain randomness. */ export type RandomnessStateUpdateTransaction = { __typename?: 'RandomnessStateUpdateTransaction'; /** Epoch of the randomness state update transaction. */ epoch?: Maybe; /** Updated random bytes, Base64 encoded. */ randomBytes?: Maybe; /** The initial version of the randomness object that it was shared at. */ randomnessObjInitialSharedVersion?: Maybe; /** Randomness round of the update. */ randomnessRound?: Maybe; }; /** A transaction that wanted to read a consensus-managed object but couldn't because it became not-consensus-managed before the transaction executed (for example, it was deleted, turned into an owned object, or wrapped). */ export type ReadConsensusStreamEnded = { __typename?: 'ReadConsensusStreamEnded'; /** The ID of the consensus-managed object. */ address?: Maybe; /** The sequence number associated with the consensus stream ending. */ sequenceNumber?: Maybe; }; /** A Move object that can be received in this transaction. */ export type Receiving = { __typename?: 'Receiving'; object?: Maybe; }; /** Whether the currency is regulated or not. */ export enum RegulatedState { /** A `DenyCap` or a `RegulatedCoinMetadata` exists for this currency. */ Regulated = 'REGULATED', /** The currency was created without a deny list. */ Unregulated = 'UNREGULATED' } /** A Secp256k1 public key. */ export type Secp256K1PublicKey = { __typename?: 'Secp256K1PublicKey'; /** The raw public key bytes. */ bytes?: Maybe; }; /** A Secp256k1 signature. */ export type Secp256K1Signature = { __typename?: 'Secp256K1Signature'; /** The public key bytes. */ publicKey?: Maybe; /** The raw signature bytes. */ signature?: Maybe; }; /** A Secp256r1 public key. */ export type Secp256R1PublicKey = { __typename?: 'Secp256R1PublicKey'; /** The raw public key bytes. */ bytes?: Maybe; }; /** A Secp256r1 signature. */ export type Secp256R1Signature = { __typename?: 'Secp256R1Signature'; /** The public key bytes. */ publicKey?: Maybe; /** The raw signature bytes. */ signature?: Maybe; }; export type ServiceConfig = { __typename?: 'ServiceConfig'; /** Range of checkpoints for which data is available for a query type, field and optional filter. If filter is not provided, the strictest retention range for the query and type is returned. */ availableRange: AvailableRange; /** * Number of elements a paginated connection will return if a page size is not supplied. * * Accepts `type` and `field` arguments which identify the connection that is being queried. If the field in question is paginated, its default page size is returned. If it does not exist or is not paginated, `null` is returned. */ defaultPageSize?: Maybe; /** Maximum output size of a disassembled MoveModule, in bytes. */ maxDisassembledModuleSize?: Maybe; /** Maximum depth of nested field access supported in display outputs. */ maxDisplayFieldDepth?: Maybe; /** Maximum number of components in a Display v2 format string. */ maxDisplayFormatNodes?: Maybe; /** Maximum number of objects that can be loaded while evaluating a display. */ maxDisplayObjectLoads?: Maybe; /** Maximum output size of a display output. */ maxDisplayOutputSize?: Maybe; /** Maximum budget in bytes to spend when outputting a structured `MoveValue`. */ maxMoveValueBound?: Maybe; /** Maximum nesting allowed in datatype fields when calculating the layout of a single type. */ maxMoveValueDepth?: Maybe; /** Maximum number of elements that can be requested from a multi-get query. A request to fetch more keys will result in an error. */ maxMultiGetSize?: Maybe; /** * Maximum number of estimated output nodes in a GraphQL response. * * The estimate is an upperbound of how many nodes there would be in the output assuming every requested field is present, paginated requests return full page sizes, and multi-get queries find all requested keys. Below is a worked example query: * * ```graphql * | 0: query { # 514 = total * | 1: checkpoint { # 1 * | 2: sequenceNumber # 1 * | 3: } * | 4: * | 5: multiGetObjects([$a, $b, $c]) { # 1 (* 3) * | 6: address # 3 * | 7: digest # 3 * | 8: } * | 9: * | 10: # default page size is 20 * | 11: transactions { # 1 (* 20) * | 12: pageInfo { # 1 * | 13: hasNextPage # 1 * | 14: endCursor # 1 * | 15: } * | 16: * | 17: nodes # 1 * | 18: { # 20 * | 19: digest # 20 * | 20: effects { # 20 * | 21: objectChanges(first: 10) { # 20 (* 10) * | 22: nodes # 20 * | 23: { # 200 * | 24: address # 200 * | 25: } * | 26: } * | 27: } * | 28: } * | 29: } * | 30: } * ``` */ maxOutputNodes?: Maybe; /** * Maximum number of elements that can be requested from a paginated connection. A request to fetch more elements will result in an error. * * Accepts `type` and `field` arguments which identify the connection that is being queried. If the field in question is paginated, its max page size is returned. If it does not exist or is not paginated, `null` is returned. */ maxPageSize?: Maybe; /** Maximum depth of a GraphQL query that can be accepted by this service. */ maxQueryDepth?: Maybe; /** The maximum number of nodes (field names) the service will accept in a single query. */ maxQueryNodes?: Maybe; /** Maximum size in bytes of a single GraphQL request, excluding the elements covered by `maxTransactionPayloadSize`. */ maxQueryPayloadSize?: Maybe; /** Maximum number of paginated fields that can return results in a single request. Queries on paginated fields that exceed this limit will return an error. */ maxRichQueries?: Maybe; /** * Maximum size in bytes allowed for the `txBytes` and `signatures` parameters of an `executeTransaction` or `simulateTransaction` field, or the `bytes` and `signature` parameters of a `verifyZkLoginSignature` field. * * This is cumulative across all matching fields in a single GraphQL request. */ maxTransactionPayloadSize?: Maybe; /** Maximum amount of nesting among type arguments (type arguments nest when a type argument is itself generic and has arguments). */ maxTypeArgumentDepth?: Maybe; /** Maximum number of type parameters a type can have. */ maxTypeArgumentWidth?: Maybe; /** Maximum number of datatypes that need to be processed when calculating the layout of a single type. */ maxTypeNodes?: Maybe; /** Maximum time in milliseconds spent waiting for a response from fullnode after issuing a transaction to execute. Note that the transaction may still succeed even in the case of a timeout. Transactions are idempotent, so a transaction that times out should be re-submitted until the network returns a definite response (success or failure, not timeout). */ mutationTimeoutMs?: Maybe; /** Maximum time in milliseconds that will be spent to serve one query request. */ queryTimeoutMs?: Maybe; }; export type ServiceConfigAvailableRangeArgs = { field?: InputMaybe; filters?: InputMaybe>; type: Scalars['String']['input']; }; export type ServiceConfigDefaultPageSizeArgs = { field: Scalars['String']['input']; type: Scalars['String']['input']; }; export type ServiceConfigMaxPageSizeArgs = { field: Scalars['String']['input']; type: Scalars['String']['input']; }; /** Object is shared, can be used by any address, and is mutable. */ export type Shared = { __typename?: 'Shared'; /** The version at which the object became shared. */ initialSharedVersion?: Maybe; }; /** A Move object that's shared. */ export type SharedInput = { __typename?: 'SharedInput'; /** The address of the shared object. */ address?: Maybe; /** The version that this object was shared at. */ initialSharedVersion?: Maybe; /** * Controls whether the transaction block can reference the shared object as a mutable reference or by value. * * This has implications for scheduling: Transactions that just read shared objects at a certain version (mutable = false) can be executed concurrently, while transactions that write shared objects (mutable = true) must be executed serially with respect to each other. */ mutable?: Maybe; }; /** The structured details of a signature, varying by scheme. */ export type SignatureScheme = Ed25519Signature | MultisigSignature | PasskeySignature | Secp256K1Signature | Secp256R1Signature | ZkLoginSignature; /** The result of simulating a transaction, including the predicted effects. */ export type SimulationResult = { __typename?: 'SimulationResult'; /** The predicted effects of the transaction if it were executed. */ effects?: Maybe; /** The intermediate outputs for each command of the transaction simulation, including contents of mutated references and return values. */ outputs?: Maybe>; }; /** Splits off coins with denominations in `amounts` from `coin`, returning multiple results (as many as there are amounts.) */ export type SplitCoinsCommand = { __typename?: 'SplitCoinsCommand'; /** The denominations to split off from the coin. */ amounts: Array; /** The coin to split. */ coin?: Maybe; }; /** System transaction for storing execution time observations. */ export type StoreExecutionTimeObservationsTransaction = { __typename?: 'StoreExecutionTimeObservationsTransaction'; /** A workaround to define an empty variant of a GraphQL union. */ _?: Maybe; }; /** Future behavior of a currency's supply. */ export enum SupplyState { /** The supply can only decrease. */ BurnOnly = 'BURN_ONLY', /** The supply can neither increase nor decrease. */ Fixed = 'FIXED' } /** Description of a transaction, the unit of activity on Sui. */ export type Transaction = Node & { __typename?: 'Transaction'; /** A 32-byte hash that uniquely identifies the transaction contents, encoded in Base58. */ digest: Scalars['String']['output']; /** The results to the chain of executing this transaction. */ effects?: Maybe; /** This field is set by senders of a transaction block. It is an epoch reference that sets a deadline after which validators will no longer consider the transaction valid. By default, there is no deadline for when a transaction must execute. */ expiration?: Maybe; /** The gas input field provides information on what objects were used as gas as well as the owner of the gas object(s) and information on the gas price and budget. */ gasInput?: Maybe; /** The transaction's globally unique identifier, which can be passed to `Query.node` to refetch it. */ id: Scalars['ID']['output']; /** The type of this transaction as well as the commands and/or parameters comprising the transaction of this kind. */ kind?: Maybe; /** The address corresponding to the public key that signed this transaction. System transactions do not have senders. */ sender?: Maybe
; /** User signatures for this transaction. */ signatures: Array; /** The Base64-encoded BCS serialization of this transaction, as a `TransactionData`. */ transactionBcs?: Maybe; /** The transaction as a JSON blob, matching the gRPC proto format (excluding BCS). */ transactionJson?: Maybe; }; /** An argument to a programmable transaction command. */ export type TransactionArgument = GasCoin | Input | TxResult; export type TransactionConnection = { __typename?: 'TransactionConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type TransactionEdge = { __typename?: 'TransactionEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: Transaction; }; /** The results of executing a transaction. */ export type TransactionEffects = { __typename?: 'TransactionEffects'; /** The effect this transaction had on the balances (sum of coin values per coin type) of addresses and objects. */ balanceChanges?: Maybe; /** The balance changes as a JSON array, matching the gRPC proto format. */ balanceChangesJson?: Maybe; /** The checkpoint this transaction was finalized in. */ checkpoint?: Maybe; /** Transactions whose outputs this transaction depends upon. */ dependencies?: Maybe; /** * A 32-byte hash that uniquely identifies the transaction contents, encoded in Base58. * * Note that this is different from the execution digest, which is the unique hash of the transaction effects. */ digest: Scalars['String']['output']; /** The Base64-encoded BCS serialization of these effects, as `TransactionEffects`. */ effectsBcs?: Maybe; /** A 32-byte hash that uniquely identifies the effects contents, encoded in Base58. */ effectsDigest?: Maybe; /** The effects as a JSON blob, matching the gRPC proto format (excluding BCS). */ effectsJson?: Maybe; /** The epoch this transaction was finalized in. */ epoch?: Maybe; /** Events emitted by this transaction. */ events?: Maybe; /** Rich execution error information for failed transactions. */ executionError?: Maybe; /** Effects related to the gas object used for the transaction (costs incurred and the identity of the smashed gas object returned). */ gasEffects?: Maybe; /** The latest version of all objects (apart from packages) that have been created or modified by this transaction, immediately following this transaction. */ lamportVersion?: Maybe; /** The before and after state of objects that were modified by this transaction. */ objectChanges?: Maybe; /** Whether the transaction executed successfully or not. */ status?: Maybe; /** * Timestamp corresponding to the checkpoint this transaction was finalized in. * * `null` for executed/simulated transactions that have not been included in a checkpoint. */ timestamp?: Maybe; /** The transaction that ran to produce these effects. */ transaction?: Maybe; /** The unchanged consensus-managed objects that were referenced by this transaction. */ unchangedConsensusObjects?: Maybe; }; /** The results of executing a transaction. */ export type TransactionEffectsBalanceChangesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** The results of executing a transaction. */ export type TransactionEffectsDependenciesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** The results of executing a transaction. */ export type TransactionEffectsEventsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** The results of executing a transaction. */ export type TransactionEffectsObjectChangesArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** The results of executing a transaction. */ export type TransactionEffectsUnchangedConsensusObjectsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type TransactionFilter = { /** * Limit to transactions that interacted with the given address. * The address could be a sender, sponsor, or recipient of the transaction. */ affectedAddress?: InputMaybe; /** * Limit to transactions that interacted with the given object. * The object could have been created, read, modified, deleted, wrapped, or unwrapped by the transaction. * Objects that were passed as a `Receiving` input are not considered to have been affected by a transaction unless they were actually received. */ affectedObject?: InputMaybe; /** Filter to transactions that occurred strictly after the given checkpoint. */ afterCheckpoint?: InputMaybe; /** Filter to transactions in the given checkpoint. */ atCheckpoint?: InputMaybe; /** Filter to transaction that occurred strictly before the given checkpoint. */ beforeCheckpoint?: InputMaybe; /** Filter transactions by move function called. Calls can be filtered by the `package`, `package::module`, or the `package::module::name` of their function. */ function?: InputMaybe; /** An input filter selecting for either system or programmable transactions. */ kind?: InputMaybe; /** Limit to transactions that were sent by the given address. */ sentAddress?: InputMaybe; }; /** Input argument to a Programmable Transaction Block (PTB) command. */ export type TransactionInput = BalanceWithdraw | MoveValue | OwnedOrImmutable | Pure | Receiving | SharedInput; export type TransactionInputConnection = { __typename?: 'TransactionInputConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type TransactionInputEdge = { __typename?: 'TransactionInputEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: TransactionInput; }; /** Different types of transactions that can be executed on the Sui network. */ export type TransactionKind = AuthenticatorStateUpdateTransaction | ChangeEpochTransaction | ConsensusCommitPrologueTransaction | EndOfEpochTransaction | GenesisTransaction | ProgrammableSystemTransaction | ProgrammableTransaction | RandomnessStateUpdateTransaction; /** An input filter selecting for either system or programmable transactions. */ export enum TransactionKindInput { /** A user submitted transaction block. */ ProgrammableTx = 'PROGRAMMABLE_TX', /** * A system transaction can be one of several types of transactions. * See [unions/transaction-block-kind] for more details. */ SystemTx = 'SYSTEM_TX' } /** Transfers `inputs` to `address`. All inputs must have the `store` ability (allows public transfer) and must not be previously immutable or shared. */ export type TransferObjectsCommand = { __typename?: 'TransferObjectsCommand'; /** The address to transfer to. */ address?: Maybe; /** The objects to transfer. */ inputs: Array; }; /** The result of another command. */ export type TxResult = { __typename?: 'TxResult'; /** The index of the command that produced this result. */ cmd?: Maybe; /** For nested results, the index within the result. */ ix?: Maybe; }; /** Information about which previous versions of a package introduced its types. */ export type TypeOrigin = { __typename?: 'TypeOrigin'; /** The storage ID of the package that first defined this type. */ definingId?: Maybe; /** Module defining the type. */ module?: Maybe; /** Name of the struct. */ struct?: Maybe; }; /** Details pertaining to consensus-managed objects that are referenced by but not changed by a transaction. */ export type UnchangedConsensusObject = ConsensusObjectCancelled | ConsensusObjectRead | MutateConsensusStreamEnded | PerEpochConfig | ReadConsensusStreamEnded; export type UnchangedConsensusObjectConnection = { __typename?: 'UnchangedConsensusObjectConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type UnchangedConsensusObjectEdge = { __typename?: 'UnchangedConsensusObjectEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: UnchangedConsensusObject; }; /** Upgrades a Move Package. */ export type UpgradeCommand = { __typename?: 'UpgradeCommand'; /** ID of the package being upgraded. */ currentPackage?: Maybe; /** IDs of the transitive dependencies of the package to be published. */ dependencies?: Maybe>; /** Bytecode for the modules to be published, BCS serialized and Base64 encoded. */ modules?: Maybe>; /** The `UpgradeTicket` authorizing the upgrade. */ upgradeTicket?: Maybe; }; export type UserSignature = { __typename?: 'UserSignature'; /** The structured signature details, parsed by scheme. */ scheme?: Maybe; /** * The signature bytes, Base64-encoded. * For simple signatures: flag || signature || pubkey * For complex signatures: flag || bcs_serialized_struct */ signatureBytes?: Maybe; }; export type Validator = { __typename?: 'Validator'; /** The number of epochs for which this validator has been below the low stake threshold. */ atRisk?: Maybe; /** On-chain representation of the underlying `0x3::validator::Validator` value. */ contents?: Maybe; /** Other validators this validator has reported. */ reportRecords?: Maybe; }; export type ValidatorReportRecordsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; export type ValidatorAggregatedSignature = { __typename?: 'ValidatorAggregatedSignature'; /** The epoch when this aggregate signature was produced. */ epoch?: Maybe; /** The Base64 encoded BLS12381 aggregated signature. */ signature?: Maybe; /** The indexes of validators that contributed to this signature. */ signersMap: Array; }; export type ValidatorConnection = { __typename?: 'ValidatorConnection'; /** A list of edges. */ edges: Array; /** A list of nodes. */ nodes: Array; /** Information to aid in pagination. */ pageInfo: PageInfo; }; /** An edge in a connection. */ export type ValidatorEdge = { __typename?: 'ValidatorEdge'; /** A cursor for use in pagination */ cursor: Scalars['String']['output']; /** The item at the end of the edge */ node: Validator; }; /** Representation of `0x3::validator_set::ValidatorSet`. */ export type ValidatorSet = { __typename?: 'ValidatorSet'; /** The validators currently in the committee for this validator set. */ activeValidators?: Maybe; /** On-chain representation of the underlying `0x3::validator_set::ValidatorSet` value. */ contents?: Maybe; }; /** Representation of `0x3::validator_set::ValidatorSet`. */ export type ValidatorSetActiveValidatorsArgs = { after?: InputMaybe; before?: InputMaybe; first?: InputMaybe; last?: InputMaybe; }; /** Filter for paginating the history of an Object or MovePackage. */ export type VersionFilter = { /** Filter to versions that are strictly newer than this one, defaults to fetching from the earliest version known to this RPC (this could be the initial version, or some later version if the initial version has been pruned). */ afterVersion?: InputMaybe; /** Filter to versions that are strictly older than this one, defaults to fetching up to the latest version (inclusive). */ beforeVersion?: InputMaybe; }; /** The account to withdraw funds from. */ export enum WithdrawFrom { /** The funds are withdrawn from the transaction sender's account. */ Sender = 'SENDER', /** The funds are withdrawn from the sponsor's account. */ Sponsor = 'SPONSOR' } export type WithdrawMaxAmountU64 = { __typename?: 'WithdrawMaxAmountU64'; amount?: Maybe; }; /** Reservation details for a withdrawal. */ export type WithdrawalReservation = WithdrawMaxAmountU64; /** System transaction for writing the pre-computed storage cost for accumulator objects. */ export type WriteAccumulatorStorageCostTransaction = { __typename?: 'WriteAccumulatorStorageCostTransaction'; /** A workaround to define an empty variant of a GraphQL union. */ _?: Maybe; }; /** A Base64-encoded claim from the JWT used in zkLogin. */ export type ZkLoginClaim = { __typename?: 'ZkLoginClaim'; /** The index mod 4 used for Base64 decoding alignment. */ indexMod4?: Maybe; /** The Base64url-unpadded encoded claim value. */ value?: Maybe; }; /** The zkLogin inputs including proof, claim details, and JWT header. */ export type ZkLoginInputs = { __typename?: 'ZkLoginInputs'; /** The address seed as a base10-encoded string. */ addressSeed?: Maybe; /** The Base64-encoded JWT header. */ headerBase64?: Maybe; /** The Base64-encoded issuer claim details. */ issBase64Details?: Maybe; /** The zero-knowledge proof points. */ proofPoints?: Maybe; }; /** An enum that specifies the intent scope to be used to parse the bytes for signature verification. */ export enum ZkLoginIntentScope { /** Indicates that the bytes are to be parsed as a personal message. */ PersonalMessage = 'PERSONAL_MESSAGE', /** Indicates that the bytes are to be parsed as transaction data bytes. */ TransactionData = 'TRANSACTION_DATA' } /** A JWK (JSON Web Key) identifier. */ export type ZkLoginJwkId = { __typename?: 'ZkLoginJwkId'; /** The OIDC provider issuer string. */ iss?: Maybe; /** The key ID that identifies the JWK. */ kid?: Maybe; }; /** The zero-knowledge proof consisting of three elliptic curve points. */ export type ZkLoginProof = { __typename?: 'ZkLoginProof'; /** G1 point 'a'. */ a?: Maybe; /** G2 point 'b'. */ b?: Maybe; /** G1 point 'c'. */ c?: Maybe; }; /** A zkLogin public identifier, containing the OAuth issuer and address seed. */ export type ZkLoginPublicIdentifier = { __typename?: 'ZkLoginPublicIdentifier'; /** The address seed as a decimal string. */ addressSeed?: Maybe; /** The OAuth provider issuer string (e.g. "https://accounts.google.com"). */ iss?: Maybe; }; export type ZkLoginSignature = { __typename?: 'ZkLoginSignature'; /** The zkLogin inputs including proof, claim details, and JWT header. */ inputs?: Maybe; /** The JWK identifier used to verify the zkLogin proof. */ jwkId?: Maybe; /** The maximum epoch for which this signature is valid. */ maxEpoch?: Maybe; /** The public identifier (issuer + address seed) for this zkLogin authenticator. */ publicIdentifier?: Maybe; /** The inner user signature (ed25519/secp256k1/secp256r1). */ signature?: Maybe; }; /** The result of the zkLogin signature verification. */ export type ZkLoginVerifyResult = { __typename?: 'ZkLoginVerifyResult'; /** Whether the signature was verified successfully. */ success?: Maybe; }; export type GetAllBalancesQueryVariables = Exact<{ owner: Scalars['SuiAddress']['input']; limit?: InputMaybe; cursor?: InputMaybe; }>; export type GetAllBalancesQuery = { __typename?: 'Query', address?: { __typename?: 'Address', balances?: { __typename?: 'BalanceConnection', pageInfo: { __typename?: 'PageInfo', hasNextPage: boolean, endCursor?: string | null }, nodes: Array<{ __typename?: 'Balance', totalBalance?: string | null, addressBalance?: string | null, coinType?: { __typename?: 'MoveType', repr: string } | null }> } | null } | null }; export type GetBalanceQueryVariables = Exact<{ owner: Scalars['SuiAddress']['input']; coinType?: InputMaybe; }>; export type GetBalanceQuery = { __typename?: 'Query', address?: { __typename?: 'Address', balance?: { __typename?: 'Balance', totalBalance?: string | null, addressBalance?: string | null, coinType?: { __typename?: 'MoveType', repr: string } | null } | null } | null }; export type GetChainIdentifierQueryVariables = Exact<{ [key: string]: never; }>; export type GetChainIdentifierQuery = { __typename?: 'Query', checkpoint?: { __typename?: 'Checkpoint', digest?: string | null } | null }; export type GetCoinMetadataQueryVariables = Exact<{ coinType: Scalars['String']['input']; }>; export type GetCoinMetadataQuery = { __typename?: 'Query', coinMetadata?: { __typename?: 'CoinMetadata', address: string, decimals?: number | null, name?: string | null, symbol?: string | null, description?: string | null, iconUrl?: string | null } | null }; export type GetCoinsQueryVariables = Exact<{ owner: Scalars['SuiAddress']['input']; first?: InputMaybe; cursor?: InputMaybe; type?: InputMaybe; }>; export type GetCoinsQuery = { __typename?: 'Query', address?: { __typename?: 'Address', address: string, objects?: { __typename?: 'MoveObjectConnection', pageInfo: { __typename?: 'PageInfo', hasNextPage: boolean, endCursor?: string | null }, nodes: Array<{ __typename?: 'MoveObject', address: string, version?: number | null, digest?: string | null, owner?: | { __typename: 'AddressOwner', address?: { __typename?: 'Address', address: string } | null } | { __typename: 'ConsensusAddressOwner', startVersion?: number | null, address?: { __typename?: 'Address', address: string } | null } | { __typename: 'Immutable' } | { __typename: 'ObjectOwner', address?: { __typename?: 'Address', address: string } | null } | { __typename: 'Shared', initialSharedVersion?: number | null } | null, contents?: { __typename?: 'MoveValue', json?: unknown | null, type?: { __typename?: 'MoveType', repr: string } | null } | null }> } | null } | null }; export type GetCurrentSystemStateQueryVariables = Exact<{ [key: string]: never; }>; export type GetCurrentSystemStateQuery = { __typename?: 'Query', epoch?: { __typename?: 'Epoch', epochId: number, referenceGasPrice?: string | null, startTimestamp?: string | null, protocolConfigs?: { __typename?: 'ProtocolConfigs', protocolVersion: number } | null, systemState?: { __typename?: 'MoveValue', json?: unknown | null } | null } | null }; export type GetDynamicFieldsQueryVariables = Exact<{ parentId: Scalars['SuiAddress']['input']; first?: InputMaybe; cursor?: InputMaybe; includeValue?: InputMaybe; }>; export type GetDynamicFieldsQuery = { __typename?: 'Query', address?: { __typename?: 'Address', dynamicFields?: { __typename?: 'DynamicFieldConnection', pageInfo: { __typename?: 'PageInfo', hasNextPage: boolean, endCursor?: string | null }, nodes: Array<{ __typename?: 'DynamicField', name?: { __typename?: 'MoveValue', bcs?: string | null, type?: { __typename?: 'MoveType', repr: string } | null } | null, value?: | { __typename: 'MoveObject', address: string, contents?: { __typename?: 'MoveValue', bcs?: string | null, type?: { __typename?: 'MoveType', repr: string } | null } | null } | { __typename: 'MoveValue', bcs?: string | null, type?: { __typename?: 'MoveType', repr: string } | null } | null }> } | null } | null }; export type GetMoveFunctionQueryVariables = Exact<{ package: Scalars['SuiAddress']['input']; module: Scalars['String']['input']; function: Scalars['String']['input']; }>; export type GetMoveFunctionQuery = { __typename?: 'Query', package?: { __typename?: 'MovePackage', module?: { __typename?: 'MoveModule', function?: { __typename?: 'MoveFunction', name: string, visibility?: MoveVisibility | null, isEntry?: boolean | null, typeParameters?: Array<{ __typename?: 'MoveFunctionTypeParameter', constraints: Array }> | null, parameters?: Array<{ __typename?: 'OpenMoveType', signature: OpenMoveTypeSignature }> | null, return?: Array<{ __typename?: 'OpenMoveType', signature: OpenMoveTypeSignature }> | null } | null } | null } | null }; export type GetProtocolConfigQueryVariables = Exact<{ [key: string]: never; }>; export type GetProtocolConfigQuery = { __typename?: 'Query', epoch?: { __typename?: 'Epoch', protocolConfigs?: { __typename?: 'ProtocolConfigs', protocolVersion: number, featureFlags: Array<{ __typename?: 'FeatureFlag', key: string, value: boolean }>, configs: Array<{ __typename?: 'ProtocolConfig', key: string, value?: string | null }> } | null } | null }; export type GetReferenceGasPriceQueryVariables = Exact<{ [key: string]: never; }>; export type GetReferenceGasPriceQuery = { __typename?: 'Query', epoch?: { __typename?: 'Epoch', referenceGasPrice?: string | null } | null }; export type DefaultSuinsNameQueryVariables = Exact<{ address: Scalars['SuiAddress']['input']; }>; export type DefaultSuinsNameQuery = { __typename?: 'Query', address?: { __typename?: 'Address', defaultNameRecord?: { __typename?: 'NameRecord', domain: string } | null } | null }; export type GetOwnedObjectsQueryVariables = Exact<{ owner: Scalars['SuiAddress']['input']; limit?: InputMaybe; cursor?: InputMaybe; filter?: InputMaybe; includeContent?: InputMaybe; includePreviousTransaction?: InputMaybe; includeObjectBcs?: InputMaybe; includeJson?: InputMaybe; includeDisplay?: InputMaybe; }>; export type GetOwnedObjectsQuery = { __typename?: 'Query', address?: { __typename?: 'Address', objects?: { __typename?: 'MoveObjectConnection', pageInfo: { __typename?: 'PageInfo', hasNextPage: boolean, endCursor?: string | null }, nodes: Array<{ __typename?: 'MoveObject', address: string, digest?: string | null, version?: number | null, objectBcs?: string | null, contents?: { __typename?: 'MoveValue', bcs?: string | null, json?: unknown | null, display?: { __typename?: 'Display', output?: unknown | null, errors?: unknown | null } | null, type?: { __typename?: 'MoveType', repr: string } | null } | null, owner?: | { __typename: 'AddressOwner', address?: { __typename?: 'Address', address: string } | null } | { __typename: 'ConsensusAddressOwner', startVersion?: number | null, address?: { __typename?: 'Address', address: string } | null } | { __typename: 'Immutable' } | { __typename: 'ObjectOwner', address?: { __typename?: 'Address', address: string } | null } | { __typename: 'Shared', initialSharedVersion?: number | null } | null, previousTransaction?: { __typename?: 'Transaction', digest: string } | null }> } | null } | null }; export type MultiGetObjectsQueryVariables = Exact<{ objectKeys: Array | ObjectKey; includeContent?: InputMaybe; includePreviousTransaction?: InputMaybe; includeObjectBcs?: InputMaybe; includeJson?: InputMaybe; includeDisplay?: InputMaybe; }>; export type MultiGetObjectsQuery = { __typename?: 'Query', multiGetObjects: Array<{ __typename?: 'Object', address: string, digest?: string | null, version?: number | null, objectBcs?: string | null, asMoveObject?: { __typename?: 'MoveObject', contents?: { __typename?: 'MoveValue', bcs?: string | null, json?: unknown | null, display?: { __typename?: 'Display', output?: unknown | null, errors?: unknown | null } | null, type?: { __typename?: 'MoveType', repr: string } | null } | null } | null, asMovePackage?: { __typename: 'MovePackage' } | null, owner?: | { __typename: 'AddressOwner', address?: { __typename?: 'Address', address: string } | null } | { __typename: 'ConsensusAddressOwner', startVersion?: number | null, address?: { __typename?: 'Address', address: string } | null } | { __typename: 'Immutable' } | { __typename: 'ObjectOwner', address?: { __typename?: 'Address', address: string } | null } | { __typename: 'Shared', initialSharedVersion?: number | null } | null, previousTransaction?: { __typename?: 'Transaction', digest: string } | null } | null> }; export type Object_FieldsFragment = { __typename?: 'Object', address: string, digest?: string | null, version?: number | null, objectBcs?: string | null, asMoveObject?: { __typename?: 'MoveObject', contents?: { __typename?: 'MoveValue', bcs?: string | null, json?: unknown | null, display?: { __typename?: 'Display', output?: unknown | null, errors?: unknown | null } | null, type?: { __typename?: 'MoveType', repr: string } | null } | null } | null, asMovePackage?: { __typename: 'MovePackage' } | null, owner?: | { __typename: 'AddressOwner', address?: { __typename?: 'Address', address: string } | null } | { __typename: 'ConsensusAddressOwner', startVersion?: number | null, address?: { __typename?: 'Address', address: string } | null } | { __typename: 'Immutable' } | { __typename: 'ObjectOwner', address?: { __typename?: 'Address', address: string } | null } | { __typename: 'Shared', initialSharedVersion?: number | null } | null, previousTransaction?: { __typename?: 'Transaction', digest: string } | null }; export type Move_Object_FieldsFragment = { __typename?: 'MoveObject', address: string, digest?: string | null, version?: number | null, objectBcs?: string | null, contents?: { __typename?: 'MoveValue', bcs?: string | null, json?: unknown | null, display?: { __typename?: 'Display', output?: unknown | null, errors?: unknown | null } | null, type?: { __typename?: 'MoveType', repr: string } | null } | null, owner?: | { __typename: 'AddressOwner', address?: { __typename?: 'Address', address: string } | null } | { __typename: 'ConsensusAddressOwner', startVersion?: number | null, address?: { __typename?: 'Address', address: string } | null } | { __typename: 'Immutable' } | { __typename: 'ObjectOwner', address?: { __typename?: 'Address', address: string } | null } | { __typename: 'Shared', initialSharedVersion?: number | null } | null, previousTransaction?: { __typename?: 'Transaction', digest: string } | null }; type Object_Owner_Fields_AddressOwner_Fragment = { __typename: 'AddressOwner', address?: { __typename?: 'Address', address: string } | null }; type Object_Owner_Fields_ConsensusAddressOwner_Fragment = { __typename: 'ConsensusAddressOwner', startVersion?: number | null, address?: { __typename?: 'Address', address: string } | null }; type Object_Owner_Fields_Immutable_Fragment = { __typename: 'Immutable' }; type Object_Owner_Fields_ObjectOwner_Fragment = { __typename: 'ObjectOwner', address?: { __typename?: 'Address', address: string } | null }; type Object_Owner_Fields_Shared_Fragment = { __typename: 'Shared', initialSharedVersion?: number | null }; export type Object_Owner_FieldsFragment = | Object_Owner_Fields_AddressOwner_Fragment | Object_Owner_Fields_ConsensusAddressOwner_Fragment | Object_Owner_Fields_Immutable_Fragment | Object_Owner_Fields_ObjectOwner_Fragment | Object_Owner_Fields_Shared_Fragment ; export type SimulateTransactionQueryVariables = Exact<{ transaction: Scalars['JSON']['input']; includeTransaction?: InputMaybe; includeEffects?: InputMaybe; includeEvents?: InputMaybe; includeBalanceChanges?: InputMaybe; includeObjectTypes?: InputMaybe; includeCommandResults?: InputMaybe; includeBcs?: InputMaybe; doGasSelection?: InputMaybe; checksEnabled?: InputMaybe; }>; export type SimulateTransactionQuery = { __typename?: 'Query', simulateTransaction: { __typename?: 'SimulationResult', effects?: { __typename?: 'TransactionEffects', transaction?: { __typename?: 'Transaction', digest: string, transactionJson?: unknown | null, transactionBcs?: string | null, signatures: Array<{ __typename?: 'UserSignature', signatureBytes?: string | null }>, effects?: { __typename?: 'TransactionEffects', status?: ExecutionStatus | null, effectsBcs?: string | null, effectsJson?: unknown | null, balanceChangesJson?: unknown | null, executionError?: { __typename?: 'ExecutionError', message: string, abortCode?: string | null, identifier?: string | null, constant?: string | null, sourceLineNumber?: number | null, instructionOffset?: number | null, module?: { __typename?: 'MoveModule', name: string, package?: { __typename?: 'MovePackage', address: string } | null } | null, function?: { __typename?: 'MoveFunction', name: string } | null } | null, epoch?: { __typename?: 'Epoch', epochId: number } | null, objectChanges?: { __typename?: 'ObjectChangeConnection', nodes: Array<{ __typename?: 'ObjectChange', address: string, outputState?: { __typename?: 'Object', asMoveObject?: { __typename?: 'MoveObject', contents?: { __typename?: 'MoveValue', type?: { __typename?: 'MoveType', repr: string } | null } | null } | null } | null }> } | null, events?: { __typename?: 'EventConnection', pageInfo: { __typename?: 'PageInfo', hasNextPage: boolean }, nodes: Array<{ __typename?: 'Event', transactionModule?: { __typename?: 'MoveModule', name: string, package?: { __typename?: 'MovePackage', address: string } | null } | null, sender?: { __typename?: 'Address', address: string } | null, contents?: { __typename?: 'MoveValue', bcs?: string | null, json?: unknown | null, type?: { __typename?: 'MoveType', repr: string } | null } | null }> } | null } | null } | null } | null, outputs?: Array<{ __typename?: 'CommandResult', returnValues?: Array<{ __typename?: 'CommandOutput', value?: { __typename?: 'MoveValue', bcs?: string | null } | null }> | null, mutatedReferences?: Array<{ __typename?: 'CommandOutput', value?: { __typename?: 'MoveValue', bcs?: string | null } | null }> | null }> | null } }; export type ExecuteTransactionMutationVariables = Exact<{ transactionDataBcs: Scalars['Base64']['input']; signatures: Array | Scalars['Base64']['input']; includeTransaction?: InputMaybe; includeEffects?: InputMaybe; includeEvents?: InputMaybe; includeBalanceChanges?: InputMaybe; includeObjectTypes?: InputMaybe; includeBcs?: InputMaybe; }>; export type ExecuteTransactionMutation = { __typename?: 'Mutation', executeTransaction: { __typename?: 'ExecutionResult', effects?: { __typename?: 'TransactionEffects', transaction?: { __typename?: 'Transaction', digest: string, transactionJson?: unknown | null, transactionBcs?: string | null, signatures: Array<{ __typename?: 'UserSignature', signatureBytes?: string | null }>, effects?: { __typename?: 'TransactionEffects', status?: ExecutionStatus | null, effectsBcs?: string | null, effectsJson?: unknown | null, balanceChangesJson?: unknown | null, executionError?: { __typename?: 'ExecutionError', message: string, abortCode?: string | null, identifier?: string | null, constant?: string | null, sourceLineNumber?: number | null, instructionOffset?: number | null, module?: { __typename?: 'MoveModule', name: string, package?: { __typename?: 'MovePackage', address: string } | null } | null, function?: { __typename?: 'MoveFunction', name: string } | null } | null, epoch?: { __typename?: 'Epoch', epochId: number } | null, objectChanges?: { __typename?: 'ObjectChangeConnection', nodes: Array<{ __typename?: 'ObjectChange', address: string, outputState?: { __typename?: 'Object', asMoveObject?: { __typename?: 'MoveObject', contents?: { __typename?: 'MoveValue', type?: { __typename?: 'MoveType', repr: string } | null } | null } | null } | null }> } | null, events?: { __typename?: 'EventConnection', pageInfo: { __typename?: 'PageInfo', hasNextPage: boolean }, nodes: Array<{ __typename?: 'Event', transactionModule?: { __typename?: 'MoveModule', name: string, package?: { __typename?: 'MovePackage', address: string } | null } | null, sender?: { __typename?: 'Address', address: string } | null, contents?: { __typename?: 'MoveValue', bcs?: string | null, json?: unknown | null, type?: { __typename?: 'MoveType', repr: string } | null } | null }> } | null } | null } | null } | null } }; export type GetTransactionBlockQueryVariables = Exact<{ digest: Scalars['String']['input']; includeTransaction?: InputMaybe; includeEffects?: InputMaybe; includeEvents?: InputMaybe; includeBalanceChanges?: InputMaybe; includeObjectTypes?: InputMaybe; includeBcs?: InputMaybe; }>; export type GetTransactionBlockQuery = { __typename?: 'Query', transaction?: { __typename?: 'Transaction', digest: string, transactionJson?: unknown | null, transactionBcs?: string | null, signatures: Array<{ __typename?: 'UserSignature', signatureBytes?: string | null }>, effects?: { __typename?: 'TransactionEffects', status?: ExecutionStatus | null, effectsBcs?: string | null, effectsJson?: unknown | null, balanceChangesJson?: unknown | null, executionError?: { __typename?: 'ExecutionError', message: string, abortCode?: string | null, identifier?: string | null, constant?: string | null, sourceLineNumber?: number | null, instructionOffset?: number | null, module?: { __typename?: 'MoveModule', name: string, package?: { __typename?: 'MovePackage', address: string } | null } | null, function?: { __typename?: 'MoveFunction', name: string } | null } | null, epoch?: { __typename?: 'Epoch', epochId: number } | null, objectChanges?: { __typename?: 'ObjectChangeConnection', nodes: Array<{ __typename?: 'ObjectChange', address: string, outputState?: { __typename?: 'Object', asMoveObject?: { __typename?: 'MoveObject', contents?: { __typename?: 'MoveValue', type?: { __typename?: 'MoveType', repr: string } | null } | null } | null } | null }> } | null, events?: { __typename?: 'EventConnection', pageInfo: { __typename?: 'PageInfo', hasNextPage: boolean }, nodes: Array<{ __typename?: 'Event', transactionModule?: { __typename?: 'MoveModule', name: string, package?: { __typename?: 'MovePackage', address: string } | null } | null, sender?: { __typename?: 'Address', address: string } | null, contents?: { __typename?: 'MoveValue', bcs?: string | null, json?: unknown | null, type?: { __typename?: 'MoveType', repr: string } | null } | null }> } | null } | null } | null }; export type Transaction_FieldsFragment = { __typename?: 'Transaction', digest: string, transactionJson?: unknown | null, transactionBcs?: string | null, signatures: Array<{ __typename?: 'UserSignature', signatureBytes?: string | null }>, effects?: { __typename?: 'TransactionEffects', status?: ExecutionStatus | null, effectsBcs?: string | null, effectsJson?: unknown | null, balanceChangesJson?: unknown | null, executionError?: { __typename?: 'ExecutionError', message: string, abortCode?: string | null, identifier?: string | null, constant?: string | null, sourceLineNumber?: number | null, instructionOffset?: number | null, module?: { __typename?: 'MoveModule', name: string, package?: { __typename?: 'MovePackage', address: string } | null } | null, function?: { __typename?: 'MoveFunction', name: string } | null } | null, epoch?: { __typename?: 'Epoch', epochId: number } | null, objectChanges?: { __typename?: 'ObjectChangeConnection', nodes: Array<{ __typename?: 'ObjectChange', address: string, outputState?: { __typename?: 'Object', asMoveObject?: { __typename?: 'MoveObject', contents?: { __typename?: 'MoveValue', type?: { __typename?: 'MoveType', repr: string } | null } | null } | null } | null }> } | null, events?: { __typename?: 'EventConnection', pageInfo: { __typename?: 'PageInfo', hasNextPage: boolean }, nodes: Array<{ __typename?: 'Event', transactionModule?: { __typename?: 'MoveModule', name: string, package?: { __typename?: 'MovePackage', address: string } | null } | null, sender?: { __typename?: 'Address', address: string } | null, contents?: { __typename?: 'MoveValue', bcs?: string | null, json?: unknown | null, type?: { __typename?: 'MoveType', repr: string } | null } | null }> } | null } | null }; export type ResolveTransactionQueryVariables = Exact<{ transaction: Scalars['JSON']['input']; doGasSelection?: InputMaybe; }>; export type ResolveTransactionQuery = { __typename?: 'Query', simulateTransaction: { __typename?: 'SimulationResult', effects?: { __typename?: 'TransactionEffects', transaction?: { __typename?: 'Transaction', transactionBcs?: string | null, effects?: { __typename?: 'TransactionEffects', status?: ExecutionStatus | null, executionError?: { __typename?: 'ExecutionError', message: string, abortCode?: string | null, identifier?: string | null, constant?: string | null, sourceLineNumber?: number | null, instructionOffset?: number | null, module?: { __typename?: 'MoveModule', name: string, package?: { __typename?: 'MovePackage', address: string } | null } | null, function?: { __typename?: 'MoveFunction', name: string } | null } | null } | null } | null } | null } }; export type VerifyZkLoginSignatureQueryVariables = Exact<{ bytes: Scalars['Base64']['input']; signature: Scalars['Base64']['input']; intentScope: ZkLoginIntentScope; author: Scalars['SuiAddress']['input']; }>; export type VerifyZkLoginSignatureQuery = { __typename?: 'Query', verifyZkLoginSignature?: { __typename?: 'ZkLoginVerifyResult', success?: boolean | null } | null }; export class TypedDocumentString extends String implements DocumentTypeDecoration { __apiType?: NonNullable['__apiType']>; private value: string; public __meta__?: Record | undefined; constructor(value: string, __meta__?: Record | undefined) { super(value); this.value = value; this.__meta__ = __meta__; } override toString(): string & DocumentTypeDecoration { return this.value; } } export const Object_Owner_FieldsFragmentDoc = new TypedDocumentString(` fragment OBJECT_OWNER_FIELDS on Owner { __typename ... on AddressOwner { address { address } } ... on ObjectOwner { address { address } } ... on Shared { initialSharedVersion } ... on ConsensusAddressOwner { startVersion address { address } } } `, {"fragmentName":"OBJECT_OWNER_FIELDS"}) as unknown as TypedDocumentString; export const Object_FieldsFragmentDoc = new TypedDocumentString(` fragment OBJECT_FIELDS on Object { address digest version objectBcs @include(if: $includeObjectBcs) asMoveObject { contents { bcs @include(if: $includeContent) json @include(if: $includeJson) display @include(if: $includeDisplay) { output errors } type { repr } } } asMovePackage { __typename } owner { ...OBJECT_OWNER_FIELDS } previousTransaction @include(if: $includePreviousTransaction) { digest } } fragment OBJECT_OWNER_FIELDS on Owner { __typename ... on AddressOwner { address { address } } ... on ObjectOwner { address { address } } ... on Shared { initialSharedVersion } ... on ConsensusAddressOwner { startVersion address { address } } }`, {"fragmentName":"OBJECT_FIELDS"}) as unknown as TypedDocumentString; export const Move_Object_FieldsFragmentDoc = new TypedDocumentString(` fragment MOVE_OBJECT_FIELDS on MoveObject { address digest version objectBcs @include(if: $includeObjectBcs) contents { bcs @include(if: $includeContent) json @include(if: $includeJson) display @include(if: $includeDisplay) { output errors } type { repr } } owner { ...OBJECT_OWNER_FIELDS } previousTransaction @include(if: $includePreviousTransaction) { digest } } fragment OBJECT_OWNER_FIELDS on Owner { __typename ... on AddressOwner { address { address } } ... on ObjectOwner { address { address } } ... on Shared { initialSharedVersion } ... on ConsensusAddressOwner { startVersion address { address } } }`, {"fragmentName":"MOVE_OBJECT_FIELDS"}) as unknown as TypedDocumentString; export const Transaction_FieldsFragmentDoc = new TypedDocumentString(` fragment TRANSACTION_FIELDS on Transaction { digest transactionJson @include(if: $includeTransaction) transactionBcs @include(if: $includeBcs) signatures { signatureBytes } effects { status executionError { message abortCode identifier constant sourceLineNumber instructionOffset module { name package { address } } function { name } } epoch { epochId } effectsBcs @include(if: $includeEffects) effectsJson @include(if: $includeObjectTypes) objectChanges(first: 50) @include(if: $includeObjectTypes) { nodes { address outputState { asMoveObject { contents { type { repr } } } } } } balanceChangesJson @include(if: $includeBalanceChanges) events(first: 50) @include(if: $includeEvents) { pageInfo { hasNextPage } nodes { transactionModule { package { address } name } sender { address } contents { type { repr } bcs json } } } } } `, {"fragmentName":"TRANSACTION_FIELDS"}) as unknown as TypedDocumentString; export const GetAllBalancesDocument = new TypedDocumentString(` query getAllBalances($owner: SuiAddress!, $limit: Int, $cursor: String) { address(address: $owner) { balances(first: $limit, after: $cursor) { pageInfo { hasNextPage endCursor } nodes { coinType { repr } totalBalance addressBalance } } } } `) as unknown as TypedDocumentString; export const GetBalanceDocument = new TypedDocumentString(` query getBalance($owner: SuiAddress!, $coinType: String = "0x2::sui::SUI") { address(address: $owner) { balance(coinType: $coinType) { coinType { repr } totalBalance addressBalance } } } `) as unknown as TypedDocumentString; export const GetChainIdentifierDocument = new TypedDocumentString(` query getChainIdentifier { checkpoint(sequenceNumber: 0) { digest } } `) as unknown as TypedDocumentString; export const GetCoinMetadataDocument = new TypedDocumentString(` query getCoinMetadata($coinType: String!) { coinMetadata(coinType: $coinType) { address decimals name symbol description iconUrl } } `) as unknown as TypedDocumentString; export const GetCoinsDocument = new TypedDocumentString(` query getCoins($owner: SuiAddress!, $first: Int, $cursor: String, $type: String = "0x2::coin::Coin<0x2::sui::SUI>") { address(address: $owner) { address objects(first: $first, after: $cursor, filter: {type: $type}) { pageInfo { hasNextPage endCursor } nodes { owner { ...OBJECT_OWNER_FIELDS } contents { json type { repr } } address version digest } } } } fragment OBJECT_OWNER_FIELDS on Owner { __typename ... on AddressOwner { address { address } } ... on ObjectOwner { address { address } } ... on Shared { initialSharedVersion } ... on ConsensusAddressOwner { startVersion address { address } } }`) as unknown as TypedDocumentString; export const GetCurrentSystemStateDocument = new TypedDocumentString(` query getCurrentSystemState { epoch { epochId referenceGasPrice startTimestamp protocolConfigs { protocolVersion } systemState { json } } } `) as unknown as TypedDocumentString; export const GetDynamicFieldsDocument = new TypedDocumentString(` query getDynamicFields($parentId: SuiAddress!, $first: Int, $cursor: String, $includeValue: Boolean = false) { address(address: $parentId) { dynamicFields(first: $first, after: $cursor) { pageInfo { hasNextPage endCursor } nodes { name { bcs type { repr } } value { __typename ... on MoveValue { bcs @include(if: $includeValue) type { repr } } ... on MoveObject { address contents { bcs @include(if: $includeValue) type { repr } } } } } } } } `) as unknown as TypedDocumentString; export const GetMoveFunctionDocument = new TypedDocumentString(` query getMoveFunction($package: SuiAddress!, $module: String!, $function: String!) { package(address: $package) { module(name: $module) { function(name: $function) { name visibility isEntry typeParameters { constraints } parameters { signature } return { signature } } } } } `) as unknown as TypedDocumentString; export const GetProtocolConfigDocument = new TypedDocumentString(` query getProtocolConfig { epoch { protocolConfigs { protocolVersion featureFlags { key value } configs { key value } } } } `) as unknown as TypedDocumentString; export const GetReferenceGasPriceDocument = new TypedDocumentString(` query getReferenceGasPrice { epoch { referenceGasPrice } } `) as unknown as TypedDocumentString; export const DefaultSuinsNameDocument = new TypedDocumentString(` query defaultSuinsName($address: SuiAddress!) { address(address: $address) { defaultNameRecord { domain } } } `) as unknown as TypedDocumentString; export const GetOwnedObjectsDocument = new TypedDocumentString(` query getOwnedObjects($owner: SuiAddress!, $limit: Int, $cursor: String, $filter: ObjectFilter, $includeContent: Boolean = false, $includePreviousTransaction: Boolean = false, $includeObjectBcs: Boolean = false, $includeJson: Boolean = false, $includeDisplay: Boolean = false) { address(address: $owner) { objects(first: $limit, after: $cursor, filter: $filter) { pageInfo { hasNextPage endCursor } nodes { ...MOVE_OBJECT_FIELDS } } } } fragment MOVE_OBJECT_FIELDS on MoveObject { address digest version objectBcs @include(if: $includeObjectBcs) contents { bcs @include(if: $includeContent) json @include(if: $includeJson) display @include(if: $includeDisplay) { output errors } type { repr } } owner { ...OBJECT_OWNER_FIELDS } previousTransaction @include(if: $includePreviousTransaction) { digest } } fragment OBJECT_OWNER_FIELDS on Owner { __typename ... on AddressOwner { address { address } } ... on ObjectOwner { address { address } } ... on Shared { initialSharedVersion } ... on ConsensusAddressOwner { startVersion address { address } } }`) as unknown as TypedDocumentString; export const MultiGetObjectsDocument = new TypedDocumentString(` query multiGetObjects($objectKeys: [ObjectKey!]!, $includeContent: Boolean = false, $includePreviousTransaction: Boolean = false, $includeObjectBcs: Boolean = false, $includeJson: Boolean = false, $includeDisplay: Boolean = false) { multiGetObjects(keys: $objectKeys) { ...OBJECT_FIELDS } } fragment OBJECT_FIELDS on Object { address digest version objectBcs @include(if: $includeObjectBcs) asMoveObject { contents { bcs @include(if: $includeContent) json @include(if: $includeJson) display @include(if: $includeDisplay) { output errors } type { repr } } } asMovePackage { __typename } owner { ...OBJECT_OWNER_FIELDS } previousTransaction @include(if: $includePreviousTransaction) { digest } } fragment OBJECT_OWNER_FIELDS on Owner { __typename ... on AddressOwner { address { address } } ... on ObjectOwner { address { address } } ... on Shared { initialSharedVersion } ... on ConsensusAddressOwner { startVersion address { address } } }`) as unknown as TypedDocumentString; export const SimulateTransactionDocument = new TypedDocumentString(` query simulateTransaction($transaction: JSON!, $includeTransaction: Boolean = false, $includeEffects: Boolean = false, $includeEvents: Boolean = false, $includeBalanceChanges: Boolean = false, $includeObjectTypes: Boolean = false, $includeCommandResults: Boolean = false, $includeBcs: Boolean = false, $doGasSelection: Boolean = false, $checksEnabled: Boolean = true) { simulateTransaction( transaction: $transaction doGasSelection: $doGasSelection checksEnabled: $checksEnabled ) { effects { transaction { ...TRANSACTION_FIELDS } } outputs @include(if: $includeCommandResults) { returnValues { value { bcs } } mutatedReferences { value { bcs } } } } } fragment TRANSACTION_FIELDS on Transaction { digest transactionJson @include(if: $includeTransaction) transactionBcs @include(if: $includeBcs) signatures { signatureBytes } effects { status executionError { message abortCode identifier constant sourceLineNumber instructionOffset module { name package { address } } function { name } } epoch { epochId } effectsBcs @include(if: $includeEffects) effectsJson @include(if: $includeObjectTypes) objectChanges(first: 50) @include(if: $includeObjectTypes) { nodes { address outputState { asMoveObject { contents { type { repr } } } } } } balanceChangesJson @include(if: $includeBalanceChanges) events(first: 50) @include(if: $includeEvents) { pageInfo { hasNextPage } nodes { transactionModule { package { address } name } sender { address } contents { type { repr } bcs json } } } } }`) as unknown as TypedDocumentString; export const ExecuteTransactionDocument = new TypedDocumentString(` mutation executeTransaction($transactionDataBcs: Base64!, $signatures: [Base64!]!, $includeTransaction: Boolean = false, $includeEffects: Boolean = false, $includeEvents: Boolean = false, $includeBalanceChanges: Boolean = false, $includeObjectTypes: Boolean = false, $includeBcs: Boolean = false) { executeTransaction( transactionDataBcs: $transactionDataBcs signatures: $signatures ) { effects { transaction { ...TRANSACTION_FIELDS } } } } fragment TRANSACTION_FIELDS on Transaction { digest transactionJson @include(if: $includeTransaction) transactionBcs @include(if: $includeBcs) signatures { signatureBytes } effects { status executionError { message abortCode identifier constant sourceLineNumber instructionOffset module { name package { address } } function { name } } epoch { epochId } effectsBcs @include(if: $includeEffects) effectsJson @include(if: $includeObjectTypes) objectChanges(first: 50) @include(if: $includeObjectTypes) { nodes { address outputState { asMoveObject { contents { type { repr } } } } } } balanceChangesJson @include(if: $includeBalanceChanges) events(first: 50) @include(if: $includeEvents) { pageInfo { hasNextPage } nodes { transactionModule { package { address } name } sender { address } contents { type { repr } bcs json } } } } }`) as unknown as TypedDocumentString; export const GetTransactionBlockDocument = new TypedDocumentString(` query getTransactionBlock($digest: String!, $includeTransaction: Boolean = false, $includeEffects: Boolean = false, $includeEvents: Boolean = false, $includeBalanceChanges: Boolean = false, $includeObjectTypes: Boolean = false, $includeBcs: Boolean = false) { transaction(digest: $digest) { ...TRANSACTION_FIELDS } } fragment TRANSACTION_FIELDS on Transaction { digest transactionJson @include(if: $includeTransaction) transactionBcs @include(if: $includeBcs) signatures { signatureBytes } effects { status executionError { message abortCode identifier constant sourceLineNumber instructionOffset module { name package { address } } function { name } } epoch { epochId } effectsBcs @include(if: $includeEffects) effectsJson @include(if: $includeObjectTypes) objectChanges(first: 50) @include(if: $includeObjectTypes) { nodes { address outputState { asMoveObject { contents { type { repr } } } } } } balanceChangesJson @include(if: $includeBalanceChanges) events(first: 50) @include(if: $includeEvents) { pageInfo { hasNextPage } nodes { transactionModule { package { address } name } sender { address } contents { type { repr } bcs json } } } } }`) as unknown as TypedDocumentString; export const ResolveTransactionDocument = new TypedDocumentString(` query resolveTransaction($transaction: JSON!, $doGasSelection: Boolean = true) { simulateTransaction(transaction: $transaction, doGasSelection: $doGasSelection) { effects { transaction { transactionBcs effects { status executionError { message abortCode identifier constant sourceLineNumber instructionOffset module { name package { address } } function { name } } } } } } } `) as unknown as TypedDocumentString; export const VerifyZkLoginSignatureDocument = new TypedDocumentString(` query verifyZkLoginSignature($bytes: Base64!, $signature: Base64!, $intentScope: ZkLoginIntentScope!, $author: SuiAddress!) { verifyZkLoginSignature( bytes: $bytes signature: $signature intentScope: $intentScope author: $author ) { success } } `) as unknown as TypedDocumentString;