### Web3API Header START ### scalar UInt scalar UInt8 scalar UInt16 scalar UInt32 scalar Int scalar Int8 scalar Int16 scalar Int32 scalar Bytes scalar BigInt scalar JSON scalar Map directive @imported( uri: String! namespace: String! nativeType: String! ) on OBJECT | ENUM directive @imports( types: [String!]! ) on OBJECT directive @capability( type: String! uri: String! namespace: String! ) repeatable on OBJECT directive @enabled_interface on OBJECT directive @annotate(type: String!) on FIELD ### Web3API Header END ### type Query @imports( types: [ "Ethereum_Query", "Ethereum_Connection", "Ethereum_TxOverrides", "Ethereum_StaticTxResult", "Ethereum_TxRequest", "Ethereum_TxReceipt", "Ethereum_Log", "Ethereum_EventNotification", "Ethereum_Network", "UTS46_Query", "UTS46_ConvertResult", "SHA3_Query" ] ) { getResolver( registryAddress: String! domain: String! connection: Ethereum_Connection ): String! getOwner( domain: String! registryAddress: String! connection: Ethereum_Connection ): String! getAddress( domain: String! resolverAddress: String! connection: Ethereum_Connection ): String! getAddressFromDomain( domain: String! registryAddress: String! connection: Ethereum_Connection ): String! getContentHash( domain: String! resolverAddress: String! connection: Ethereum_Connection ): String! getContentHashFromDomain( domain: String! registryAddress: String! connection: Ethereum_Connection ): String! getExpiryTimes( domain: String! registrarAddress: String! connection: Ethereum_Connection ): String! getReverseResolver( address: String! registryAddress: String! connection: Ethereum_Connection ): String! getNameFromReverseResolver( address: String! resolverAddress: String! connection: Ethereum_Connection ): String! getNameFromAddress( address: String! registryAddress: String! connection: Ethereum_Connection ): String! getTextRecord( domain: String! resolverAddress: String! key: String! connection: Ethereum_Connection ): String! } type Mutation @imports( types: [ "Ethereum_Mutation", "Ethereum_Connection", "Ethereum_TxOverrides", "Ethereum_TxResponse", "Ethereum_Access", "Ethereum_TxReceipt", "Ethereum_Log", "Ethereum_TxRequest", "UTS46_Query", "UTS46_ConvertResult", "SHA3_Query" ] ) { setResolver( domain: String! resolverAddress: String! registryAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! registerDomain( domain: String! registrarAddress: String! registryAddress: String! owner: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! reverseRegisterDomain( domain: String! reverseRegistryAddress: String! owner: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! setName( domain: String! reverseRegistryAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! setAddress( domain: String! address: String! resolverAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! setOwner( domain: String! newOwner: String! registryAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! setSubdomainOwner( subdomain: String! owner: String! registryAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! setRecord( domain: String! owner: String! resolverAddress: String! ttl: String! registryAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! setSubdomainRecord( domain: String! label: String! owner: String! resolverAddress: String! ttl: String! registryAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! setContentHash( domain: String! cid: String! resolverAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! setAddressFromDomain( domain: String! address: String! registryAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! setContentHashFromDomain( domain: String! cid: String! registryAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! deployFIFSRegistrar( registryAddress: String! tld: String! connection: Ethereum_Connection txOverrides: TxOverrides ): String! registerSubnodeOwnerWithFIFSRegistrar( label: String! owner: String! fifsRegistrarAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! setTextRecord( domain: String! resolverAddress: String! key: String! value: String! connection: Ethereum_Connection txOverrides: TxOverrides ): Ethereum_TxResponse! configureOpenDomain( tld: String! owner: String! registryAddress: String! resolverAddress: String! registrarAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): ConfigureOpenDomainResponse! createSubdomainInOpenDomain( label: String! domain: String! owner: String! fifsRegistrarAddress: String! registryAddress: String! resolverAddress: String! connection: Ethereum_Connection txOverrides: TxOverrides ): CreateSubdomainInOpenDomainResponse! createSubdomainInOpenDomainAndSetContentHash( label: String! domain: String! owner: String! fifsRegistrarAddress: String! registryAddress: String! resolverAddress: String! cid: String! connection: Ethereum_Connection txOverrides: TxOverrides ): CreateSubdomainInOpenDomainAndSetContentHashResponse } type ConfigureOpenDomainResponse { fifsRegistrarAddress: String! registerOpenDomainTxReceipt: Ethereum_TxResponse! setSubdomainRecordTxReceipt: Ethereum_TxResponse! } type CreateSubdomainInOpenDomainResponse { registerSubdomainTxReceipt: Ethereum_TxResponse! setResolverTxReceipt: Ethereum_TxResponse! } type CreateSubdomainInOpenDomainAndSetContentHashResponse implements CreateSubdomainInOpenDomainResponse { setContentHashReceiptTx: Ethereum_TxResponse! registerSubdomainTxReceipt: Ethereum_TxResponse! setResolverTxReceipt: Ethereum_TxResponse! } type TxOverrides { gasPrice: BigInt gasLimit: BigInt } ### Imported Queries START ### type Ethereum_Query @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "Query" ) { callContractView( address: String! method: String! args: [String!] connection: Ethereum_Connection ): String! callContractStatic( address: String! method: String! args: [String!] connection: Ethereum_Connection txOverrides: Ethereum_TxOverrides ): Ethereum_StaticTxResult! getBalance( address: String! blockTag: BigInt connection: Ethereum_Connection ): BigInt! encodeParams( types: [String!]! values: [String!]! ): String! encodeFunction( method: String! args: [String!] ): String! solidityPack( types: [String!]! values: [String!]! ): String! solidityKeccak256( types: [String!]! values: [String!]! ): String! soliditySha256( types: [String!]! values: [String!]! ): String! getSignerAddress( connection: Ethereum_Connection ): String! getSignerBalance( blockTag: BigInt connection: Ethereum_Connection ): BigInt! getSignerTransactionCount( blockTag: BigInt connection: Ethereum_Connection ): BigInt! getGasPrice( connection: Ethereum_Connection ): BigInt! estimateTransactionGas( tx: Ethereum_TxRequest! connection: Ethereum_Connection ): BigInt! estimateContractCallGas( address: String! method: String! args: [String!] connection: Ethereum_Connection txOverrides: Ethereum_TxOverrides ): BigInt! checkAddress( address: String! ): Boolean! toWei( eth: String! ): BigInt! toEth( wei: BigInt! ): String! awaitTransaction( txHash: String! confirmations: UInt32! timeout: UInt32! connection: Ethereum_Connection ): Ethereum_TxReceipt! waitForEvent( address: String! event: String! args: [String!] timeout: UInt32 connection: Ethereum_Connection ): Ethereum_EventNotification! getNetwork( connection: Ethereum_Connection ): Ethereum_Network! } type UTS46_Query @imported( uri: "w3://ens/uts46.web3api.eth", namespace: "UTS46", nativeType: "Query" ) { toAscii( value: String! ): String! toUnicode( value: String! ): String! convert( value: String! ): UTS46_ConvertResult! } type SHA3_Query @imported( uri: "w3://ens/sha3.web3api.eth", namespace: "SHA3", nativeType: "Query" ) { sha3_512( message: String! ): String! sha3_384( message: String! ): String! sha3_256( message: String! ): String! sha3_224( message: String! ): String! keccak_512( message: String! ): String! keccak_384( message: String! ): String! keccak_256( message: String! ): String! keccak_224( message: String! ): String! hex_keccak_256( message: String! ): String! buffer_keccak_256( message: Bytes! ): String! shake_128( message: String! outputBits: Int! ): String! shake_256( message: String! outputBits: Int! ): String! } type Ethereum_Mutation @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "Mutation" ) { callContractMethod( address: String! method: String! args: [String!] connection: Ethereum_Connection txOverrides: Ethereum_TxOverrides ): Ethereum_TxResponse! callContractMethodAndWait( address: String! method: String! args: [String!] connection: Ethereum_Connection txOverrides: Ethereum_TxOverrides ): Ethereum_TxReceipt! sendTransaction( tx: Ethereum_TxRequest! connection: Ethereum_Connection ): Ethereum_TxResponse! sendTransactionAndWait( tx: Ethereum_TxRequest! connection: Ethereum_Connection ): Ethereum_TxReceipt! deployContract( abi: String! bytecode: String! args: [String!] connection: Ethereum_Connection ): String! signMessage( message: String! connection: Ethereum_Connection ): String! sendRPC( method: String! params: [String!]! connection: Ethereum_Connection ): String } ### Imported Queries END ### ### Imported Objects START ### type Ethereum_Connection @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "Connection" ) { node: String networkNameOrChainId: String } type Ethereum_TxOverrides @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "TxOverrides" ) { gasLimit: BigInt gasPrice: BigInt value: BigInt } type Ethereum_StaticTxResult @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "StaticTxResult" ) { result: String! error: Boolean! } type Ethereum_TxRequest @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "TxRequest" ) { to: String from: String nonce: UInt32 gasLimit: BigInt gasPrice: BigInt data: String value: BigInt chainId: BigInt type: UInt32 } type Ethereum_TxReceipt @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "TxReceipt" ) { to: String! from: String! contractAddress: String! transactionIndex: UInt32! root: String gasUsed: BigInt! logsBloom: String! transactionHash: String! logs: [Ethereum_Log!]! blockNumber: BigInt! blockHash: String! confirmations: UInt32! cumulativeGasUsed: BigInt! effectiveGasPrice: BigInt! byzantium: Boolean! type: UInt32! status: UInt32 } type Ethereum_Log @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "Log" ) { blockNumber: BigInt! blockHash: String! transactionIndex: UInt32! removed: Boolean! address: String! data: String! topics: [String!]! transactionHash: String! logIndex: UInt32! } type Ethereum_EventNotification @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "EventNotification" ) { data: String! address: String! log: Ethereum_Log! } type Ethereum_Network @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "Network" ) { name: String! chainId: BigInt! ensAddress: String } type UTS46_ConvertResult @imported( uri: "w3://ens/uts46.web3api.eth", namespace: "UTS46", nativeType: "ConvertResult" ) { IDN: String! PC: String! } type Ethereum_TxResponse @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "TxResponse" ) { hash: String! to: String from: String! nonce: UInt32! gasLimit: BigInt! gasPrice: BigInt data: String! value: BigInt! chainId: BigInt! blockNumber: BigInt blockHash: String timestamp: UInt32 confirmations: UInt32! raw: String r: String s: String v: UInt32 type: UInt32 accessList: [Ethereum_Access!] } type Ethereum_Access @imported( uri: "w3://ens/ethereum.web3api.eth", namespace: "Ethereum", nativeType: "Access" ) { address: String! storageKeys: [String!]! } ### Imported Objects END ###