{"lang.json":{"type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations","pattern":"^\\{(.|[\\r\\n])*\\}$","anyOf":[{"type":"string","title":"native","description":"Reserved language functions","anyOf":[{"type":"string","pattern":"(?<![\\w_])return\\s*\\(.*\\)(?![\\w_])","title":"return","description":"\n\n###  *function* **return(**result: *`any`* **):** *`void`* ;\n\n\nThe function **return** allows you to stop execution of inline code block at that position and return a value as `result` of entire block execution.\n\n\n#### Arguments\n\n- **result** (*`any`*) - value to return **[OPTIONAL]**\n\n\n\n\n#### More\nThe function **fail()** is similar but halts the execution of entire script with failure instead.\n\n\n"},{"type":"string","pattern":"(?<![\\w_])fail\\s*\\(.*\\)(?![\\w_])","title":"fail","description":"\n\n###  *function* **fail(**message: *`string`* **):** *`void`* ;\n\n\nThe function **fail** allows you to stop execution of inline code block at that position and also entire script execution in error state. \n                User can provide a `message` as argument to became the message of the error to be thrown.\n\n\n#### Arguments\n\n- **message** (*`string`*) - error message to throw **[OPTIONAL]**\n\n\n\n\n#### More\nThe function **return()** is similar but halts the execution of inline code block successfully, returning a value.\n\n\n","examples":["{ fail('This is an error message') }","{ fail() }"]}]},{"type":"string","title":"system","description":"System functions for memory management, logging, etc..","anyOf":[{"type":"string","pattern":"(?<![\\w_])set\\s*\\(.*\\)(?![\\w_])","title":"set","description":"\n\n###  *function* **set(**path: *`string`*, value: *`any`* **):** *`any`* ;\n\n\nThe function **set** allows you to set arbitrary data on script context for later reuse.\n\n\n#### Arguments\n\n- **path** (*`string`*) - path of the value to set \n- **value** (*`any`*) - variable to store \n\n\n\n\n#### More\nUse **get()** with `path='global.<path>'` to access and reuse the value later\n\n\n"},{"type":"string","pattern":"(?<![\\w_])get\\s*\\(.*\\)(?![\\w_])","title":"get","description":"\n\n###  *function* **get(**path: *`string`* **):** *`any`* ;\n\n\nThe function **get** allows you to get arbitrary data from script context.\n\n\n#### Arguments\n\n- **path** (*`string`*) - path of the value to retrieve \n\n\n\n\n#### More\nUse **set()** function to declare user variables inside a `global` object which you can later access using **get()**\n\n\n"},{"type":"string","pattern":"(?<![\\w_])console\\s*\\(.*\\)(?![\\w_])","title":"console","description":"\n\n###  *function* **console(**type: *`'log'|'info'|'warn'|'error'`*, ...values: *`any`* **):** *`void`* ;\n\n\nDumps to console one or several `values`, which can be string messages or of any type\n\n\n#### Arguments\n\n- **type** (*`'log'|'info'|'warn'|'error'`*) - value to pretty print in the logs \n- **...values** (*`any`*) - value to pretty print in the logs **[REST]**\n\n\n\n\n\n"}]},{"type":"string","title":"string","description":"String manipulation functions","anyOf":[{"type":"string","pattern":"(?<![\\w_])truncate\\s*\\(.*\\)(?![\\w_])","title":"truncate","description":"\n\n###  *function* **truncate(**value: *`string`*, prefixLength: *`number`*, suffixLength: *`number`*, separator: *`string`* **):** *`string`* ;\n\n\nTruncates a string from start to `prefixLength` characters, attaches a `separator` string, and finally adds the last `suffixLength` characters of the string\nUseful for truncating long texts, or hashes and addresses when you want to keep the beginning and the end of them and discard the middle.\n                \n\n\n#### Arguments\n\n- **value** (*`string`*) - utf-8 string to be truncated \n- **prefixLength** (*`number`*) - initial number of characters to be included in resulting string \n- **suffixLength** (*`number`*) - final number of characters to be included in resulting string \n- **separator** (*`string`*) - string to be included between prefix and suffix parts of the string \n\n\n\n\n#### More\n##### Example: \n\naddr1qzk45...kwg (`prefixLength`=10 ,`suffixLength`=3, `separator`=\"...\")\n\n\n"},{"type":"string","pattern":"(?<![\\w_])replaceAll\\s*\\(.*\\)(?![\\w_])","title":"replaceAll","description":"\n\n###  *function* **replaceAll(**text: *`string`*, match: *`string`*, value: *`string`* **):** *`string`* ;\n\n\nReplaces all `match` occurrences inside `text` by `value`\n\n\n#### Arguments\n\n- **text** (*`string`*) - utf-8 string where to search and replace \n- **match** (*`string`*) - utf-8 exact string that will be searched for and replaced by `value` \n- **value** (*`string`*) - utf-8 string value to replace with \n\n\n\n\n\n"},{"type":"string","pattern":"(?<![\\w_])join\\s*\\(.*\\)(?![\\w_])","title":"join","description":"\n\n###  *function* **join(**separator: *`string`*, list: *`<string|number>[]`* **):** *`string`* ;\n\n\nReturns a string by concatenating a `list`, joining between items using a `separator` string\n\n\n#### Arguments\n\n- **separator** (*`string`*) - separator string to place between joined items \n- **list** (*`<string|number>[]`*) - list of items to be joined. Item type must be serializable as string \n\n\n\n\n#### More\nUse **split()** function to divide a string `value`  in a list of several string items based on a `separator` string instead\n\n\n"},{"type":"string","pattern":"(?<![\\w_])split\\s*\\(.*\\)(?![\\w_])","title":"split","description":"\n\n###  *function* **split(**separator: *`string`*, list: *`string`* **):** *`string[]`* ;\n\n\nReturns a list of strings by splitting a string `value`, separating it by a `separator` string\n\n\n#### Arguments\n\n- **separator** (*`string`*) - separator string to divide with joined items with \n- **list** (*`string`*) - string to be separated \n\n\n\n\n#### More\nUse **join()** function to concatenate a list of items between a `separator` string instead\n\n\n"}]},{"type":"string","title":"array","description":"Array manipulation functions","anyOf":[{"type":"string","pattern":"(?<![\\w_])getArray\\s*\\(.*\\)(?![\\w_])","title":"getArray","description":"\n\n###  *function* **getArray(**...values: *`any`* **):** *`array`* ;\n\n\nReturns an array with each provided argument as an item\n\n\n#### Arguments\n\n- **...values** (*`any`*) - items of the array of any type **[REST]**\n\n\n\n\n#### More\nbase\n\n\n"}]},{"type":"string","title":"encoding","description":"Encoding and decoding functions","anyOf":[{"type":"string","pattern":"(?<![\\w_])jsonToObj\\s*\\(.*\\)(?![\\w_])","title":"jsonToObj","description":"\n\n###  *function* **jsonToObj(**value: *`string`* **):** *`any`* ;\n\n\nParses a JSON string and returns a value of JSON-supported type\n\n\n#### Arguments\n\n- **value** (*`string`*) - string value to parse, must be a valid JSON string \n\n\n\n\n#### More\nUse **objToJson()** function to serialize JSON\n\n\n"},{"type":"string","pattern":"(?<![\\w_])objToJson\\s*\\(.*\\)(?![\\w_])","title":"objToJson","description":"\n\n###  *function* **objToJson(**value: *`any`* **):** *`string`* ;\n\n\nTurns a value of JSON-supported type into a JSON string\n\n\n#### Arguments\n\n- **value** (*`any`*) - value to serialize as JSON string \n\n\n\n\n#### More\nUse **jsonToObj()** function to parse JSON\n\n\n"},{"type":"string","pattern":"(?<![\\w_])strToHex\\s*\\(.*\\)(?![\\w_])","title":"strToHex","description":"\n\n###  *function* **strToHex(**value: *`string`* **):** *`string`* ;\n\n\nEncodes a utf-8 text string into hexadecimal string\n\n\n#### Arguments\n\n- **value** (*`string`*) - utf-8 text string \n\n\n\n\n#### More\nUse **hexToStr()** function to decode from hexadecimal encoding\n\n\n"},{"type":"string","pattern":"(?<![\\w_])hexToStr\\s*\\(.*\\)(?![\\w_])","title":"hexToStr","description":"\n\n###  *function* **hexToStr(**value: *`string`* **):** *`string`* ;\n\n\nDecodes an hexadecimal string into the former utf-8 text string\n\n\n#### Arguments\n\n- **value** (*`string`*) - hexadecimal encoded string \n\n\n\n\n#### More\nUse **strToHex()** function to encode using hexadecimal encoding\n\n\n"},{"type":"string","pattern":"(?<![\\w_])strToBase64\\s*\\(.*\\)(?![\\w_])","title":"strToBase64","description":"\n\n###  *function* **strToBase64(**value: *`string`* **):** *`string`* ;\n\n\nEncodes a utf-8 text string into base64 string\n\n\n#### Arguments\n\n- **value** (*`string`*) - utf-8 text string \n\n\n\n\n#### More\nUse **base64ToStr()** function to decode from base64 encoding\n\n\n"},{"type":"string","pattern":"(?<![\\w_])base64ToStr\\s*\\(.*\\)(?![\\w_])","title":"base64ToStr","description":"\n\n###  *function* **base64ToStr(**value: *`string`* **):** *`string`* ;\n\n\nDecodes a base64 string into a utf-8 text string\n\n\n#### Arguments\n\n- **value** (*`string`*) - base64 encoded string \n\n\n\n\n#### More\nUse **strToBase64()** function to encode using base64 encoding\n\n\n"},{"type":"string","pattern":"(?<![\\w_])strToMetadataStr\\s*\\(.*\\)(?![\\w_])","title":"strToMetadataStr","description":"\n\n###  *function* **strToMetadataStr(**value: *`string`* **):** *`string|string[]`* ;\n\n\nAutomatically splits a utf-8 text string into a list of 64 bytes long strings if `value` length is bigger than 64 bytes\nOtherwise, it returns the original string\n                \nStrings in Cardano transaction's auxiliary data (metadata) can't be longer than 64 bytes. \nMany standards use a list of short strings as a workaround.\n                \n\n\n#### Arguments\n\n- **value** (*`string`*) - utf-8 text to be adapted for metadata usage \n\n\n\n\n#### More\nUse **metadataStrToStr()** function to convert back to string a metadata string\n\n\n"},{"type":"string","pattern":"(?<![\\w_])metadataStrToStr\\s*\\(.*\\)(?![\\w_])","title":"metadataStrToStr","description":"\n\n###  *function* **metadataStrToStr(**value: *`string|string[]`* **):** *`string`* ;\n\n\nIf a list of strings ( produced by `strToMetadataStr` ) is provided, joins it into a single string\nIf a string is provided, returns the string\n\nStrings in transaction's auxiliary data (metadata) can't be longer than 64 bytes. \nMany standards use a list of short strings as a workaround.\n                \n\n\n#### Arguments\n\n- **value** (*`string|string[]`*) - string or list of strings produced by **strToMetadataStr()** \n\n\n\n\n#### More\nUse **strToMetadataStr()** function to convert a string into a metadata string\n\n\n"},{"type":"string","pattern":"(?<![\\w_])addressBech32ToPlutusDataObj\\s*\\(.*\\)(?![\\w_])","title":"addressBech32ToPlutusDataObj","description":"\n\n###  *function* **addressBech32ToPlutusDataObj(**value: *`string`* **):** *`any`* ;\n\n\nConverts an address from Bech32 string into a Plutus Data object\n\n\n#### Arguments\n\n- **value** (*`string`*) - address Bech32 string \n\n\n\n\n#### More\nUse **addressPlutusDataObjToBech32()** to convert from Plutus Data object instead\n\n\n"},{"type":"string","pattern":"(?<![\\w_])addressPlutusDataObjToBech32\\s*\\(.*\\)(?![\\w_])","title":"addressPlutusDataObjToBech32","description":"\n\n###  *function* **addressPlutusDataObjToBech32(**value: *`any`* **):** *`string`* ;\n\n\nConverts an address from Plutus Data object into a Bech32 string. Current wallet network will be used as network ID\n\n\n#### Arguments\n\n- **value** (*`any`*) - address Plutus Data object \n\n\n\n\n#### More\nUse **addressBech32ToPlutusDataObj()** to convert from Bech32 instead\n\n\n"}]},{"type":"string","title":"crypto","description":"Cryptographic functions","anyOf":[{"type":"string","pattern":"(?<![\\w_])getAddressInfo\\s*\\(.*\\)(?![\\w_])","title":"getAddressInfo","description":"\n\n###  *function* **getAddressInfo(**address: *`string`* **):** *`object`* ;\n\n\nParses a Cardano `address` and returns information as an object with many useful properties\n\n\n#### Arguments\n\n- **address** (*`string`*) - a valid Cardano address \n\n\n\n\n\n"},{"type":"string","pattern":"(?<![\\w_])getDrepInfo\\s*\\(.*\\)(?![\\w_])","title":"getDrepInfo","description":"\n\n###  *function* **getDrepInfo(**drep: *`string`* **):** *`object`* ;\n\n\nParses a Cardano `drep` and returns information as an object with many useful properties\n\n\n#### Arguments\n\n- **drep** (*`string`*) - a valid Cardano drep \n\n\n\n\n\n"},{"type":"string","pattern":"(?<![\\w_])sha512\\s*\\(.*\\)(?![\\w_])","title":"sha512","description":"\n\n###  *function* **sha512(**data: *`string`* **):** *`string`* ;\n\n\nCalculates SHA512 hash of `data` string \n\n\n#### Arguments\n\n- **data** (*`string`*) - utf-8 string to be hashed \n\n\n\n\n\n"},{"type":"string","pattern":"(?<![\\w_])sha256\\s*\\(.*\\)(?![\\w_])","title":"sha256","description":"\n\n###  *function* **sha256(**data: *`string`* **):** *`string`* ;\n\n\nCalculates SHA256 hash of `data` string \n\n\n#### Arguments\n\n- **data** (*`string`*) - utf-8 string to be hashed \n\n\n\n\n\n"},{"type":"string","pattern":"(?<![\\w_])sha1\\s*\\(.*\\)(?![\\w_])","title":"sha1","description":"\n\n###  *function* **sha1(**data: *`string`* **):** *`string`* ;\n\n\nCalculates SHA1 hash of `data` string \n\n\n#### Arguments\n\n- **data** (*`string`*) - utf-8 string to be hashed \n\n\n\n\n\n"},{"type":"string","pattern":"(?<![\\w_])md5\\s*\\(.*\\)(?![\\w_])","title":"md5","description":"\n\n###  *function* **md5(**data: *`string`* **):** *`string`* ;\n\n\nCalculates MD5 hash of `data` string \n\n\n#### Arguments\n\n- **data** (*`string`*) - utf-8 string to be hashed \n\n\n\n\n\n"},{"type":"string","pattern":"(?<![\\w_])uuid\\s*\\(.*\\)(?![\\w_])","title":"uuid","description":"\n\n###  *function* **uuid(** **):** *`string`* ;\n\n\nGenerates a random RFC4122 UUID v4\n\n\n#### Arguments\n    none\n\n\n\n"}]},{"type":"string","title":"math","description":"Arithmetic functions","anyOf":[{"type":"string","pattern":"(?<![\\w_])addBigNum\\s*\\(.*\\)(?![\\w_])","title":"addBigNum","description":"\n\n###  *function* **addBigNum(**value: *`string|number`*, ...addends: *`string|number`* **):** *`string`* ;\n\n\nAdds `extraArgs` numbers to an initial `value`. \n\nBigNum are big positive integers provided as strings. \nThis function also convert numbers on arguments into BigNum string  \n\nReturns the sum as a BigNum string.\n                \n\n\n#### Arguments\n\n- **value** (*`string|number`*) - initial value (BigNum) \n- **...addends** (*`string|number`*) - value or values to be added (BigNum) **[REST]**\n\n\n\n\n\n"},{"type":"string","pattern":"(?<![\\w_])subBigNum\\s*\\(.*\\)(?![\\w_])","title":"subBigNum","description":"\n\n###  *function* **subBigNum(**value: *`string|number`*, ...subtrahends: *`string|number`* **):** *`string`* ;\n\n\nSubtracts `subtrahends` numbers from an initial `value` minuend. Fails on underflow.\n\nBigNum are big positive integers provided as strings. \nThis function also convert numbers on arguments into BigNum string  \n    \nReturns the subtraction as a BigNum string. \n                \n\n\n#### Arguments\n\n- **value** (*`string|number`*) - minuend, initial value (BigNum) \n- **...subtrahends** (*`string|number`*) - value or values to be subtracted (BigNum) **[REST]**\n\n\n\n\n\n"},{"type":"string","pattern":"(?<![\\w_])mulBigNum\\s*\\(.*\\)(?![\\w_])","title":"mulBigNum","description":"\n\n###  *function* **mulBigNum(**value: *`string|number`*, ...multipliers: *`string|number`* **):** *`string`* ;\n\n\nMultiplies `multipliers` numbers to an initial `value`. \n    \nBigNum are big positive integers provided as strings. \nThis function also convert numbers on arguments into BigNum string  \n\nReturns the multiplication as a BigNum string.\n                \n\n\n#### Arguments\n\n- **value** (*`string|number`*) - initial value (BigNum) \n- **...multipliers** (*`string|number`*) - value or values to be multiplied with (BigNum) **[REST]**\n\n\n\n\n\n"}]}],"$id":"lang.json"},"permissions.json":{"$id":"permissions.json","type":"object","title":"Permissions definitions","description":"Permissions names, description and properties that are used by functions and GameChanger Wallet GCScript interpreter on every dapp connection.","properties":{"getNetworkData":{"title":"get data from network","description":"fetch data from backend nodes or network data stored locally","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"await":{"title":"wait for conditions","description":"waits for conditions like timers or asset balances","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"setTerminalMode":{"title":"set terminal mode","description":"adapts the application for public terminal devices","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnRuntime":{"type":"boolean","const":true}}},"createWallet":{"title":"create wallet","description":"create wallets in behalf of you or someone else","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnRuntime":{"type":"boolean","const":true}}},"shareWorkspacePublicKeys":{"title":"share public keys","description":"share your current workspace public keys","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"shareWorkspaceAddresses":{"title":"share addresses","description":"share your current workspace addresses","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"setCurrentWorkspace":{"title":"set current workspace","description":"set your current wallet workspace","type":"object","properties":{"severity":{"type":"string","const":"medium"},"confirmOnRuntime":{"type":"boolean","const":true}}},"shareWalletAddress":{"title":"share address","description":"share one of your wallet addresses","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"shareAddressIdentity":{"title":"share address identity","description":"share one of your wallet addresses associated default native script","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"createVolatileAddress":{"title":"create volatile address","description":"create an address that may not be reconstructed again, a potential loss of funds","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"shareWalletName":{"title":"share name","description":"share one of your wallet names","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"shareWalletType":{"title":"share type","description":"share the type of your wallet","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"shareWalletPublicKey":{"title":"share public key","description":"share your wallet public key","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"deriveVolatileKeys":{"title":"generate volatile keys","description":"derive a volatile private and public key pair from your master private key, and this derivation may not be reconstructed again, a potential loss of signability, minting, staking or spending capability. Will only share public keys, not private ones.","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnRuntime":{"type":"boolean","const":true}}},"createCertificates":{"title":"create certificates","description":"create certificates, required for staking operations","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"createNativeScripts":{"title":"create native scripts","description":"create native scripts, required for token minting and multisig operations","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"createPlutusScripts":{"title":"create plutus scripts","description":"create plutus scripts, required for a huge variety of Cardano features","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"encrypt":{"title":"encrypt data or code","description":"encrypt data (maybe code) with a password","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnRuntime":{"type":"boolean","const":true}}},"decrypt":{"title":"decrypt data or code","description":"decrypt data (maybe code) with a password","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnRuntime":{"type":"boolean","const":true}}},"signData":{"title":"sign data","description":"use one of your wallet private keys to create a signature based on arbitrary data","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnRuntime":{"type":"boolean","const":true}}},"signTx":{"title":"sign transaction","description":"use wallet private keys to sign a transaction","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnRuntime":{"type":"boolean","const":true}}},"signTxs":{"title":"sign transactions","description":"use wallet private keys to sign one or more transactions. Review each transaction in detail, once signed it cannot be undone.","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnRuntime":{"type":"boolean","const":true}}},"verify":{"title":"verify signature","description":"use one of your wallet public keys to verify if a signature has been created using it's associated private key","type":"object","properties":{"severity":{"type":"string","const":"medium"},"confirmOnRuntime":{"type":"boolean","const":true}}},"buildTx":{"title":"build transaction","description":"build a transaction to spend funds, mint tokens, delegate stake or execute smart contracts","type":"object","properties":{"severity":{"type":"string","const":"medium"},"confirmOnRuntime":{"type":"boolean","const":true}}},"submitTx":{"title":"submit transaction","description":"submit to the blockchain a signed transaction","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"awaitTx":{"title":"await transaction","description":"wait for a transaction to get confirmed by the network","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"cryptography":{"title":"cryptography","description":"perform cryptographic calculations","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"executeExternalScript":{"title":"execute external code","description":"fetch and execute external block of code inside the current script","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnPreprocessor":{"type":"boolean","const":true}}},"useExternalData":{"title":"use external data","description":"fetch and include external data inside the current script to be used by the code","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnPreprocessor":{"type":"boolean","const":true}}},"useConstantData":{"title":"use constant data","description":"use data contained inside the current script","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"executeScript":{"title":"execute code","description":"execute a block of code to perform some batch operations like sharing wallet addresses or build and sign transactions","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"signTx:spend:input":{"title":"spend assets","description":"sign a transaction that once submitted will spend assets","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:spend:input:script":{"title":"unlock assets","description":"sign a transaction that once submitted will spend assets locked on a smart contract or simple contract","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:spend:input:externally":{"title":"spend third party assets","description":"sign a transaction that once submitted will spend third party assets","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:spend:collateral":{"title":"may spend assets","description":"sign a transaction that once submitted will spend ADA if one of it's smart contracts fails some validation","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:spend:collateral:script":{"title":"may spend locked assets","description":"sign a transaction that once submitted will spend ADA locked on a smart contract or simple contract, if one of it's smart contracts fails some validation","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:spend:collateral:externally":{"title":"may spend third party assets","description":"sign a transaction that once submitted will spend third party ADA if one of it's smart contracts fails some validation","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:reference:input":{"title":"reference eUTXO","description":"sign a transaction that once submitted will reference a eUTXO information without spending it","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"signTx:send:script":{"title":"lock assets","description":"sign a transaction that once submitted will lock assets on a smart contract or shared treasury address","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"signTx:send:externally":{"title":"send assets","description":"sign a transaction that once submitted will send assets to a third party address","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"signTx:send:plutusData":{"title":"send data and assets","description":"sign a transaction that once submitted will send assets with data attached","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:send:nativeScript":{"title":"send a script and assets","description":"sign a transaction that once submitted will send assets with a native script attached","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:send:plutusScript":{"title":"send a script and assets","description":"sign a transaction that once submitted will send assets with a plutus script attached","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:sendCollateralReturn:script":{"title":"may lock assets","description":"sign a transaction that once submitted will lock assets on a smart contract or shared treasury address if one of it's smart contract fails some validation","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"signTx:sendCollateralReturn:externally":{"title":"may send assets","description":"sign a transaction that once submitted will send assets to a third party address if one of it's smart contract fails some validation","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"signTx:sendCollateralReturn:plutusData":{"title":"may send data and assets","description":"sign a transaction that once submitted will send assets with data attached if one of it's smart contract fails some validation","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:sendCollateralReturn:nativeScript":{"title":"may send a script and assets","description":"sign a transaction that once submitted will send assets with a native script attached if one of it's smart contract fails some validation","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:sendCollateralReturn:plutusScript":{"title":"may send a script and assets","description":"sign a transaction that once submitted will send assets with a plutus script attached if one of it's smart contract fails some validation","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:reward":{"title":"claim staking rewards","description":"sign a transaction that once submitted will withdraw some staking rewards","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:reward:script":{"title":"unlock staking rewards","description":"sign a transaction that once submitted will withdraw some staking rewards from a smart contract or shared treasury address","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:reward:externally":{"title":"claim other's staking rewards","description":"sign a transaction that once submitted will withdraw some staking rewards from a third party address","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:mint":{"title":"mint assets","description":"sign a transaction that once submitted will mint native assets (tokens,NFTs,etc..)","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"signTx:burn":{"title":"burn assets","description":"sign a transaction that once submitted will burn native assets (tokens,NFTs,etc..)","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"signTx:cert:stakeRegistration":{"title":"register stake","description":"sign a transaction that once submitted will register stake, usually to delegate it later","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:cert:stakeDeregistration":{"title":"deregister stake","description":"sign a transaction that once submitted will deregister stake","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:cert:stakeDelegation":{"title":"delegate stake","description":"sign a transaction that once submitted will delegate stake to a stake pool","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:cert:poolRegistration":{"title":"register stake pool","description":"sign a transaction that once submitted will register a stake pool","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"signTx:cert:poolRetirement":{"title":"retire stake pool","description":"sign a transaction that once submitted will retire a stake pool","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"signTx:cert:genesisKeyDelegation":{"title":"register a new genesis key delegation","description":"sign a transaction that once submitted will register a new genesis key delegation, for advanced chain updates operations by the network governance","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"signTx:cert:moveInstantaneousRewardsCert":{"title":"spend governance treasury","description":"sign a transaction that once submitted will allow network governance to spend treasury funds, for example for Catalyst or the ITN","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"signTx:cert:voteDelegation":{"title":"delegate vote","description":"sign a transaction that once submitted will delegate vote","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:update":{"title":"update protocol parameters","description":"sign a transaction that once submitted will update chain protocol parameters","type":"object","properties":{"severity":{"type":"string","const":"high"}}},"signTx:requiredSigners":{"title":"require specific signatures","description":"sign a transaction that once submitted will get validated if also a specific cryptographic key has sign it","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:nativeScript":{"title":"execute simple contract","description":"sign a transaction that once submitted will execute a native script (for actions like mint,burn,locking assets,etc...)","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:plutusScript":{"title":"execute smart contract","description":"sign a transaction that once submitted will execute a plutus script (for actions like mint,burn,locking assets, swap tokens,etc...)","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:plutusData":{"title":"store smart contract data","description":"sign a transaction that once submitted will use and store smart contract data on-chain forever","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:redeemer:spend":{"title":"redeem assets from smart contract","description":"sign a transaction that once submitted may redeem some locked assets in a smart contract address","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:redeemer:mint":{"title":"mint or burn with smart contract","description":"sign a transaction that once submitted may mint or burn some native tokens with a smart contract","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:redeemer:cert":{"title":"sign certificate with smart contract","description":"sign a transaction that once submitted may sign a certificate with a smart contract for actions like stake delegation, pool registrations and more","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:redeemer:data":{"title":"store data to run a smart contract","description":"sign a transaction that once submitted stores data on-chain forever to trigger or redeem a smart contract action","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:auxiliaryData:metadata":{"title":"store metadata","description":"sign a transaction that once submitted will store arbitrary data on-chain forever (for minting NFTs,sending messages,or other transaction information)","type":"object","properties":{"severity":{"type":"string","const":"medium"}}},"signTx:auxiliaryData:nativeScript":{"title":"store simple contracts","description":"sign a transaction that once submitted will store native scripts on-chain forever","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"signTx:auxiliaryData:plutusScript":{"title":"store simple contracts","description":"sign a transaction that once submitted will store plutus scripts on-chain forever","type":"object","properties":{"severity":{"type":"string","const":"low"}}},"loadConfig":{"title":"load wallet configuration","description":"loads wallet configuration, and populates it generating child keys, child addresses, and other kind of artifacts","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnRuntime":{"type":"boolean","const":true}}},"saveConfig":{"title":"save wallet configuration","description":"saves wallet configuration on-chain, forever, using a GCFS DiskNFT. Later you can load it calling `loadConfig`","type":"object","properties":{"severity":{"type":"string","const":"high"},"confirmOnRuntime":{"type":"boolean","const":true}}},"searchFs":{"title":"search onchain files ","description":"search for data and executable files stored on chain","type":"object","properties":{"severity":{"type":"string","const":"medium"}}}}},"common.json":{"$id":"common.json","type":"object","title":"Common definitions and types","description":"Common API definitions and types used by functions","definitions":{"Index":{"title":"Index Number","description":"Index Number, representing a position of an item on a list. (Positive Integer, greater or equal than zero)","type":"number"},"BigNumber":{"title":"Big Number","description":"Big Number (BigNum)","type":"string"},"SlotNumber":{"title":"Slot Number","description":"Slot Number (BigNum)","type":"string"},"Quantity":{"title":"Quantity","description":"Quantity (Positive BigNum)","type":"string"},"MintQuantity":{"title":"Mint Quantity","description":"Mint Quantity. Positive value will mint the asset and negative value will burn it (Positive or Negative, non-zero BigInt)","type":"string"},"Bytes":{"title":"Bytes (hex)","description":"Bytes in hexadecimal encoding","type":"string"},"TransactionHash":{"title":"Transaction Hash","description":"Transaction Hash (hexadecimal)","type":"string"},"BIP32PublicKeyHex":{"title":"BIP32 Public Key","description":"BIP32 Public Key (hexadecimal)","type":"string"},"Address":{"title":"Wallet Address","description":"Wallet Address (Bech32)","type":"string"},"RewardAddress":{"title":"Wallet Reward Address","description":"Wallet Reward Address (Bech32)","type":"string"},"PublicKey":{"title":"Public Key","description":"Public Key (hexadecimal)","type":"string"},"PublicKeyHash":{"title":"Public Key Hash","description":"Public Key Hash (hexadecimal)","type":"string"},"ScriptHash":{"title":"Native Script or Plutus Script Hash","description":"Native Script or Plutus Script  (hexadecimal)","type":"string"},"PoolKeyHash":{"title":"Stake Pool Key Hash","description":"Stake Pool Key Hash (hexadecimal)","type":"string"},"KeyDerivation":{"title":"Key Derivation","description":"Parameters required to derive a child key pair from wallet root private key","type":"object","oneOf":[{"title":"Key Derivation (BIP32 Path)","type":"object","properties":{"name":{"type":"string","title":"Name of this key pair reference in wallet local storage","description":"Wallet stores locally specific objects for later reuse. This is the name property of this record. Names can collide."},"path":{"description":"A valid BIP32-Ed25519 (Shelley) or BIP44-Ed25519 (Byron) Cardano derivation path serialized as string mask with hardening markers (`h` or `'`)","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false,"description":"Use a valid BIP32-Ed25519 (Shelley) or BIP44-Ed25519 (Byron) Cardano derivation path to derive a child key pair from wallet root private key","required":["path","name"]},{"title":"Key Derivation (Simple path)","type":"object","properties":{"name":{"type":"string","title":"Name of this key pair reference in wallet local storage","description":"Wallet stores locally specific objects for later reuse. This is the name property of this record. Names can collide."},"kind":{"anyOf":[{"type":"string","enum":["spend","stake"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"accountIndex":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"addressIndex":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false,"description":"Use JSON parameters to derive a child key pair from wallet root private key","required":["kind","accountIndex","addressIndex","name"]}]},"ScriptRefHex":{"title":"Script Reference (Hex)","description":"Plutus or Native Script Reference object in hexadecimal encoding","type":"string"},"PlutusScriptHex":{"title":"Plutus Script (Hex)","description":"Plutus Script in hexadecimal encoding","type":"string"},"PlutusDataHex":{"title":"Plutus Datum (Hex)","description":"Plutus Datum in hexadecimal encoding","type":"string"},"PlutusDataHashHex":{"title":"Plutus Datum Hash (Hex)","description":"Plutus Datum Hash of a Plutus Datum in hexadecimal encoding","type":"string"},"PlutusDataFromHex":{"title":"Plutus Datum from hexadecimal encoding","description":"Plutus Datum previously encoded in hexadecimal","type":"object","properties":{"fromHex":{"$ref":"common.json#/definitions/PlutusDataHex"}},"required":["fromHex"]},"PlutusDataFromJSON":{"title":"Plutus Datum from JSON","description":"Plutus Datum as JSON format","type":"object","properties":{"fromJSON":{"oneOf":[{"title":"JSON definition (from string)","description":"JSON (string)","type":"object","properties":{"schema":{"anyOf":[{"type":"number"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"json":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"JSON definition (from object)","description":"JSON (object)","type":"object","properties":{"schema":{"anyOf":[{"type":"number"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"obj":{"anyOf":[{"type":["number","string","boolean","object","array","null"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"required":["fromJSON"]},"PlutusDataBytes":{"title":"Plutus Datum of Bytes (hex)","description":"Plutus Datum of bytes in hexadecimal encoding","type":"object","properties":{"bytesHex":{"$ref":"common.json#/definitions/Bytes"}},"required":["bytesHex"]},"PlutusRedeemerDataHex":{"title":"Plutus Redeemer Data (Hex)","description":"Plutus Redeemer Data in hexadecimal encoding","type":"string"},"PlutusRedeemerType":{"title":"Plutus Redeemer Type","description":"Plutus Redeemer Type","type":"string","enum":["spend","mint","cert","reward"]},"PlutusRedeemer":{"title":"Plutus Redeemer","description":"Plutus Redeemer definition","type":"object","properties":{"itemIdPattern":{"title":"Redeemable Item ID","default":"{itemType}:{key}","description":"The matching user defined item ID that will be consumed by this redeemer. The same ID has to match the transaction item ID that this redeemer will try to consume. Pattern can contain this placeholder variables:`key`, `index` (list index, not in-transaction redeemable item index), `itemType` ('spend','mint','cert' or 'reward')","anyOf":[{"title":"Redeemable ID Pattern","type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"type":{"anyOf":[{"$ref":"common.json#/definitions/PlutusRedeemerType"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"dataHex":{"anyOf":[{"$ref":"common.json#/definitions/PlutusRedeemerDataHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"memExUnits":{"anyOf":[{"$ref":"common.json#/definitions/BigNumber"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stepsExUnits":{"anyOf":[{"$ref":"common.json#/definitions/BigNumber"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["itemIdPattern","type"],"additionalProperties":false},"PlutusDatumSource":{"title":"Plutus Datum Source","description":"Plutus Datum Source definition","type":"object","properties":{"input":{"anyOf":[{"$ref":"common.json#/definitions/TxInput"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"dataHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PlutusDataHashHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"dataHex":{"anyOf":[{"$ref":"common.json#/definitions/PlutusDataBytes"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"PlutusScriptSource":{"title":"Plutus Script Source","description":"Plutus Script Source definition","type":"object","properties":{"input":{"anyOf":[{"$ref":"common.json#/definitions/TxInput"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"scriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"scriptHex":{"anyOf":[{"$ref":"common.json#/definitions/PlutusScriptHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"lang":{"anyOf":[{"type":"string","enum":["plutus_v1","plutus_v2","plutus_v3"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"scriptSize":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"PlutusConsumer":{"title":"Plutus Consumer","description":"Plutus Consumer definition. This parameters are additional information supplied that the node will use to validate the execution of the Plutus Validator (smart contract). There are no strict mandatory properties as some data can be inferred by GC automatically now or in the future, or you may want to freely combine it, but `scriptHashHex` is required if you provide a `redeemer` ","type":"object","properties":{"datum":{"anyOf":[{"$ref":"common.json#/definitions/PlutusDatumSource"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"redeemer":{"anyOf":[{"$ref":"common.json#/definitions/PlutusRedeemer"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"scriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"PlutusBundle":{"title":"Plutus Bundle","description":"Plutus Bundle with properties required to interact with Smart Contracts. ","type":"object","properties":{"scripts":{"title":"Plutus Script Sources","description":"List or Key-Value Map of Plutus Script Sources. Inlined or referenced (deployed) Plutus Scripts","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PlutusScriptSource"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PlutusScriptSource"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PlutusScriptSource"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"consumers":{"title":"Plutus Consumers","description":"List or Key-Value Map of Plutus Consumers. Redeemers and Inlined or referenced Datums","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PlutusConsumer"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PlutusConsumer"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PlutusConsumer"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"additionalProperties":false},"ScriptHeliosCode":{"title":"Helios source","description":"Helios source code to be compiled. Can be used not only to generate Plutus Validators and Parameterized Plutus Validators (Cardano Smart Contracts) but also Helios-compatible Plutus Data structures using parameter exports.","type":"object","properties":{"heliosCode":{"description":"Helios code as string that will be compiled. To avoid GCScript XSS filters to modify some Helios language operators, pass the code on other encoding, such as hexadecimal string. Dynamic code compilation allows you to generate parameterized plutus validator code on user wallet side.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"simplify":{"description":"Simplifies produced CBOR hexadecimal output and removes debugging traces. This will produce script changes, and can lead to script hash, address, policy id and other unwanted changes.","default":true,"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"version":{"description":"Helios compiler version. A change in version can produce script changes, and this can lead to script hash, address, policy id and other unwanted changes.","default":"latest","anyOf":[{"type":"string","enum":["latest","0.15.2"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"parameters":{"title":"Exported Parameters","description":"List or Key-Value Map of Exported Parameters. Must be in uppercase and compatible with Helios parameter naming conventions. Useful to build Plutus Data from Helios Code","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"required":["heliosCode"],"additionalProperties":false},"ScriptPlutusCode":{"title":"Plutus source","description":"Plutus source code to be compiled","type":"object","properties":{"plutusCode":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"ScriptPluTsCode":{"title":"Plu-Ts source","description":"Plu-Ts source code to be compiled","type":"object","properties":{"pluTsCode":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"ScriptMarloweCode":{"title":"Marlowe source","description":"Marlowe source code to be compiled","type":"object","properties":{"marloweCode":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"ScriptAikenCode":{"title":"Aiken source","description":"Aiken source code to be compiled","type":"object","properties":{"aikenCode":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"ScriptOpShinCode":{"title":"OpShin source","description":"OpShin source code to be compiled","type":"object","properties":{"opShinCode":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"NativeScriptHex":{"title":"Native Script (Hex)","description":"Native Script in hexadecimal encoding","type":"string","additionalProperties":false},"ScriptPubKey":{"title":"Public Key Native Script","description":"Require transactions to be signed using specific key signature","properties":{"pubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"ScriptTimelockStart":{"title":"Timelock Start Native Script","description":"Require transactions to be submitted after an specific slot number (blockchain time measure unit that equals 1 second)","properties":{"slotNumStart":{"anyOf":[{"$ref":"common.json#/definitions/SlotNumber"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"ScriptTimelockExpiry":{"title":"Timelock Expiry Native Script","description":"Require transactions to be submitted before an specific slot number (blockchain time measure unit that equals 1 second)","properties":{"slotNumEnd":{"anyOf":[{"$ref":"common.json#/definitions/SlotNumber"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"ScriptAll":{"title":"All Native Script","description":"Require transactions to fullfil all the items from a list of native scripts","properties":{"all":{"title":"Native Scripts","description":"List or Key-Value Map of Native Scripts","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NativeScript"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScript"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScript"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"additionalProperties":false},"ScriptAny":{"title":"Any Native Script","description":"Require transactions to fullfil any of the items from a list of native scripts","properties":{"any":{"title":"Native Scripts","description":"List or Key-Value Map of Native Scripts","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NativeScript"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScript"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScript"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"additionalProperties":false},"ScriptAtLeastN":{"title":"At Least N Native Script","description":"Require transactions to fullfil a minimum number of items from a list of native scripts","properties":{"atLeast":{"type":"number"},"ofThese":{"title":"Native Scripts","description":"List or Key-Value Map of Native Scripts","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NativeScript"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScript"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScript"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"additionalProperties":false},"NativeScript":{"oneOf":[{"title":"Native Script","description":"Native Script (Hexadecimal)","type":"object","additionalProperties":false,"properties":{"scriptHex":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}}},{"$ref":"common.json#/definitions/ScriptPubKey"},{"$ref":"common.json#/definitions/ScriptTimelockStart"},{"$ref":"common.json#/definitions/ScriptTimelockExpiry"},{"$ref":"common.json#/definitions/ScriptAll"},{"$ref":"common.json#/definitions/ScriptAny"},{"$ref":"common.json#/definitions/ScriptAtLeastN"}]},"PlutusScript":{"title":"Plutus Script","description":"Plutus on-chain validator code, also known as 'Cardano smart contracts'","type":"object","oneOf":[{"title":"Plutus Script","description":"Plutus Script (Hexadecimal)","type":"object","properties":{"strictScriptHashHex":{"title":"Enforce a script hash","description":"Set a value to enforce resulting script hash to match it, otherwise halt","anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"scriptParams":{"title":"Plutus script parameters","description":"List or Key-Value Map of PlutusData CBOR in JSON specification to parameterize the script. Compatible with <a href=\"https://cips.cardano.org/cip/CIP-57\" target=\"_blank\" rel=\"noopener noreferrer\"> Aiken-like blueprint-based parametrization </a>","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":["number","string","boolean","object","array","null"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":["number","string","boolean","object","array","null"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":["number","string","boolean","object","array","null"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"scriptHex":{"anyOf":[{"$ref":"common.json#/definitions/PlutusScriptHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"lang":{"anyOf":[{"type":"string","enum":["plutus_v1","plutus_v2","plutus_v3"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false,"required":["scriptHex","lang"]},{"$ref":"common.json#/definitions/ScriptHeliosCode"},{"$ref":"common.json#/definitions/ScriptPlutusCode"},{"$ref":"common.json#/definitions/ScriptMarloweCode"},{"$ref":"common.json#/definitions/ScriptPluTsCode"},{"$ref":"common.json#/definitions/ScriptAikenCode"},{"$ref":"common.json#/definitions/ScriptOpShinCode"}]},"PlutusData":{"title":"Plutus Datum","description":"Data format supported by plutus scripts. Used on-chain on transaction Datums and Redeemers","type":"object","oneOf":[{"$ref":"common.json#/definitions/PlutusDataFromHex"},{"$ref":"common.json#/definitions/PlutusDataFromJSON"},{"$ref":"common.json#/definitions/PlutusDataBytes"}]},"TipNetworkQuery":{"title":"Current Network Tip Query","description":"Query to fetch current Tip information from the network","properties":{"kind":{"type":"string","const":"Tip"}},"additionalProperties":false},"BeaconTokenNetworkQuery":{"title":"Beacon Token Query","description":"Query to fetch data from a Beacon Token from the network. Operation will return only 1 item, if none available it will fail","properties":{"kind":{"type":"string","const":"BeaconToken"},"asset":{"anyOf":[{"$ref":"common.json#/definitions/AssetID"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"address":{"anyOf":[{"$ref":"common.json#/definitions/Address"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"NetworkQuery":{"title":"Network Query","description":"Query to fetch data from network","type":"object","oneOf":[{"title":"Beacon Token Query","$ref":"common.json#/definitions/BeaconTokenNetworkQuery"}]},"StakeRegistration":{"title":"Stake Registration Certificate","description":"Certificate to register on-chain a stake key or script","type":"object","oneOf":[{"title":"Stake Registration Certificate","description":"Use a stake key or script to define the certificate","properties":{"kind":{"type":"string","const":"StakeRegistration"},"pubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Stake Registration Certificate","description":"Use a stake key or script to define the certificate","properties":{"kind":{"type":"string","const":"StakeRegistration"},"scriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"StakeDeregistration":{"title":"Stake De-Registration Certificate","description":"Certificate to de-register on-chain a stake key or script","type":"object","oneOf":[{"title":"Stake De-Registration Certificate","description":"Use a stake key or script to define the certificate","properties":{"kind":{"type":"string","const":"StakeDeregistration"},"pubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Stake De-Registration Certificate","description":"Use a stake key or script to define the certificate","properties":{"kind":{"type":"string","const":"StakeDeregistration"},"scriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"StakeDelegation":{"title":"Stake Delegation Certificate","description":"Certificate to delegate to a stake pool the coins of all addresses that are using an specific registered stake key or script as staking credential","type":"object","oneOf":[{"title":"Stake Delegation Certificate","description":"Use a pool key hash, and a stake key or script to define the certificate","properties":{"kind":{"type":"string","const":"StakeDelegation"},"poolKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PoolKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"pubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Stake Delegation Certificate","description":"Use a pool key hash, and a stake key or script to define the certificate","properties":{"kind":{"type":"string","const":"StakeDelegation"},"poolKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PoolKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"scriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"DRepVoteOption":{"title":"Delegate to DRep vote option","description":"The delegate to DRep  vote option","type":"object","oneOf":[{"title":"Public Key Hash","description":"The delegate to DRep  vote option","type":"object","properties":{"kind":{"anyOf":[{"type":"string","const":"DRep"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"pubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Script Hash","description":"The delegate to DRep  vote option","type":"object","properties":{"kind":{"anyOf":[{"type":"string","const":"DRep"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"scriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"AlwaysAbstainVoteOption":{"title":"Always Abstain vote option","description":"The Always Abstain vote option","type":"object","properties":{"kind":{"anyOf":[{"type":"string","const":"Abstain"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}}},"AlwaysNoConfidenceVoteOption":{"title":"Always No Confidence vote option","description":"The Always No Confidence vote option","type":"object","properties":{"kind":{"anyOf":[{"type":"string","const":"NoConfidence"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}}},"VoteDelegation":{"title":"Vote Delegation Certificate","description":"For on-chain governance. Certificate to delegate your stake key voting power to a DRep, to always abstain or to express a no confidence vote","type":"object","oneOf":[{"title":"Public Key Hash","description":"Use a stake key or script to define the certificate","type":"object","properties":{"kind":{"type":"string","const":"VoteDelegation"},"vote":{"oneOf":[{"title":"DRep","anyOf":[{"$ref":"common.json#/definitions/DRepVoteOption"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},{"title":"Always Abstain","anyOf":[{"$ref":"common.json#/definitions/AlwaysAbstainVoteOption"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},{"title":"Always No Confidence","anyOf":[{"$ref":"common.json#/definitions/AlwaysNoConfidenceVoteOption"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"pubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Script Hash","description":"Use a stake key or script to define the certificate","type":"object","properties":{"kind":{"type":"string","const":"VoteDelegation"},"vote":{"oneOf":[{"title":"DRep","anyOf":[{"$ref":"common.json#/definitions/DRepVoteOption"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},{"title":"Always Abstain","anyOf":[{"$ref":"common.json#/definitions/AlwaysAbstainVoteOption"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},{"title":"Always No Confidence","anyOf":[{"$ref":"common.json#/definitions/AlwaysNoConfidenceVoteOption"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"scriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"CertificateHex":{"title":"Certificate (Hex)","description":"Any supported certificate in hexadecimal encoding","type":"string"},"CertificateCBOR":{"title":"Certificate (Hex)","description":"Any supported certificate in hexadecimal encoding","type":"object","properties":{"certHex":{"anyOf":[{"$ref":"common.json#/definitions/Bytes"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"Certificate":{"title":"Certificate","description":"Generate a certificate to delegate stake or do other supported operations","type":"object","oneOf":[{"title":"Stake Registration","anyOf":[{"$ref":"common.json#/definitions/StakeRegistration"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},{"title":"Stake De-Registration","anyOf":[{"$ref":"common.json#/definitions/StakeDeregistration"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},{"title":"Stake Delegation","anyOf":[{"$ref":"common.json#/definitions/StakeDelegation"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},{"title":"Vote Delegation","anyOf":[{"$ref":"common.json#/definitions/VoteDelegation"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},{"title":"Certificate (Hex)","anyOf":[{"$ref":"common.json#/definitions/CertificateCBOR"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}]},"TxAuxiliaryData":{"title":"Transaction Auxiliary Data","description":"Definition of a transaction auxiliary data or metadata","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{}},"additionalProperties":false},"AssetID":{"title":"Asset","description":"Definition of a Cardano asset ID","type":"object","oneOf":[{"title":"Asset","description":"Define a Cardano asset ID using an ASCII asset name encoding as argument","type":"object","properties":{"policyId":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"assetName":{"type":"string"}},"additionalProperties":false},{"title":"Asset","description":"Define a Cardano asset ID using an hexadecimal asset name encoding as argument","type":"object","properties":{"policyId":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"assetNameHex":{"type":"string"}},"additionalProperties":false}]},"Asset":{"title":"Asset","description":"Definition of a Cardano asset.","type":"object","oneOf":[{"title":"Asset","description":"Define a Cardano asset using an ASCII asset name encoding as argument","type":"object","properties":{"policyId":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"quantity":{"anyOf":[{"$ref":"common.json#/definitions/Quantity"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"assetName":{"type":"string"}},"additionalProperties":false},{"title":"Asset","description":"Define a Cardano asset using an hexadecimal asset name encoding as argument","type":"object","properties":{"policyId":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"quantity":{"anyOf":[{"$ref":"common.json#/definitions/Quantity"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"assetNameHex":{"type":"string"}},"additionalProperties":false}]},"MintAsset":{"title":"Mint Asset","description":"Definition of a Cardano mint asset action. Positive quantity will mint, negative quantity will burn native assets.","type":"object","oneOf":[{"title":"Mint Asset","description":"Define a Cardano mint asset using an ASCII asset name encoding as argument","type":"object","properties":{"policyId":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"quantity":{"anyOf":[{"$ref":"common.json#/definitions/MintQuantity"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"assetName":{"type":"string"}},"additionalProperties":false},{"title":"Mint Asset","description":"Define a Cardano mint asset using an hexadecimal asset name encoding as argument","type":"object","properties":{"policyId":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"quantity":{"anyOf":[{"$ref":"common.json#/definitions/MintQuantity"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"assetNameHex":{"type":"string"}},"additionalProperties":false}]},"TxMint":{"title":"Transaction Mint","description":"Definition of a transaction mint action, where native assets can be minted or burned","type":"object","properties":{"idPattern":{"title":"Item ID","description":"User defined item ID. Will be used on `buildTxs` API to return an `indexMap` with final in-transaction indexes. On redeemable items it has to match the redeemer ID that will consume the item. Pattern can contain this placeholder variables:`key`, `index` (list index, not final in-transaction index), `itemType` (like 'output','spend','mint','cert','reward', etc..)","anyOf":[{"title":"Item ID Pattern","type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"policyId":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"assets":{"title":"Transaction outputs","description":"List or Key-Value Map of TxMint","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/Asset"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/Asset"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/Asset"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"additionalProperties":false},"TxCertificate":{"title":"Transaction Certificate","description":"Definition of a transaction certificate","type":"object","properties":{"idPattern":{"title":"Item ID","description":"User defined item ID. Will be used on `buildTxs` API to return an `indexMap` with final in-transaction indexes. On redeemable items it has to match the redeemer ID that will consume the item. Pattern can contain this placeholder variables:`key`, `index` (list index, not final in-transaction index), `itemType` (like 'output','spend','mint','cert','reward', etc..)","anyOf":[{"title":"Item ID Pattern","type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"certHex":{"anyOf":[{"$ref":"common.json#/definitions/CertificateHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"TxInput":{"title":"Transaction Input","description":"Definition of a transaction input","type":"object","properties":{"txHash":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"index":{"anyOf":[{"$ref":"common.json#/definitions/Index"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"TxInputRedeemable":{"title":"Transaction Input","description":"Definition of a transaction input","type":"object","properties":{"txHash":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"index":{"anyOf":[{"$ref":"common.json#/definitions/Index"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"idPattern":{"title":"Item ID","description":"User defined item ID. Will be used on `buildTxs` API to return an `indexMap` with final in-transaction indexes. On redeemable items it has to match the redeemer ID that will consume the item. Pattern can contain this placeholder variables:`key`, `index` (list index, not final in-transaction index), `itemType` (like 'output','spend','mint','cert','reward', etc..)","anyOf":[{"title":"Item ID Pattern","type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"TxOutput":{"title":"Transaction Output","description":"Definition of a transaction output","type":"object","properties":{"idPattern":{"title":"Item ID","description":"User defined item ID. Will be used on `buildTxs` API to return an `indexMap` with final in-transaction indexes. On redeemable items it has to match the redeemer ID that will consume the item. Pattern can contain this placeholder variables:`key`, `index` (list index, not final in-transaction index), `itemType` (like 'output','spend','mint','cert','reward', etc..)","anyOf":[{"title":"Item ID Pattern","type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"address":{"anyOf":[{"$ref":"common.json#/definitions/Address"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"assets":{"title":"Transaction outputs","description":"List or Key-Value Map of TxOutput","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/Asset"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/Asset"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/Asset"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"datum":{"oneOf":[{"title":"Datum Hash","description":"Datum Hash","type":"object","properties":{"datumHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PlutusDataHashHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Inlined Datum (hex)","description":"Inlined Datum (hex)","type":"object","properties":{"datumHex":{"anyOf":[{"$ref":"common.json#/definitions/PlutusDataHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"script":{"title":"Inlined Script","description":"Inlined Script","type":"object","properties":{"scriptRefHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptRefHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}},"additionalProperties":false},"TxWithdrawal":{"title":"Transaction Reward Withdrawal","description":"Definition of a transaction reward withdrawal","type":"object","properties":{"idPattern":{"title":"Item ID","description":"User defined item ID. Will be used on `buildTxs` API to return an `indexMap` with final in-transaction indexes. On redeemable items it has to match the redeemer ID that will consume the item. Pattern can contain this placeholder variables:`key`, `index` (list index, not final in-transaction index), `itemType` (like 'output','spend','mint','cert','reward', etc..)","anyOf":[{"title":"Item ID Pattern","type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"address":{"anyOf":[{"$ref":"common.json#/definitions/RewardAddress"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"quantity":{"anyOf":[{"$ref":"common.json#/definitions/Quantity"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"Tx":{"title":"Transaction","description":"A Cardano transaction definition, with fields like inputs,outputs,mints,certificates,smart contracts and metadata","type":"object","properties":{"ttl":{"title":"Time to live","description":"Transaction validity interval in slots (1 second)","type":"object","properties":{"from":{"title":"Valid From  (slots)","description":"If set, is the absolute time in slots (1 second) since when the transaction will be valid.","anyOf":[{"$ref":"common.json#/definitions/Quantity"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"duration":{"title":"Time to live (slots)","description":"If set, is the duration in slots (1 second) from `from` since when the transaction will be valid. Cannot be used if `until` is used","anyOf":[{"$ref":"common.json#/definitions/Quantity"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"until":{"title":"Valid Until (slots)","description":"If set, is the absolute time in slots (1 second) after which the transaction will be no longer valid. Cannot be used if `duration` is used","anyOf":[{"$ref":"common.json#/definitions/Quantity"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}}},"inputs":{"title":"Transaction Inputs","description":"List or Key-Value Map of TxInputRedeemable","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TxInputRedeemable"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxInputRedeemable"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxInputRedeemable"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"referenceInputs":{"title":"Transaction Reference Inputs","description":"List or Key-Value Map of TxInput","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TxInput"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxInput"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxInput"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"collateral":{"title":"Transaction Collateral Inputs","description":"List or Key-Value Map of Transaction Collateral Inputs","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TxInput"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxInput"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxInput"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"outputs":{"title":"Transaction outputs","description":"List or Key-Value Map of TxOutput","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TxOutput"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxOutput"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxOutput"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"withdrawals":{"title":"Transaction withdrawals","description":"List or Key-Value Map of TxWithdrawal","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TxWithdrawal"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxWithdrawal"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxWithdrawal"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"mints":{"title":"Transaction mints","description":"List or Key-Value Map of TxMint","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TxMint"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxMint"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxMint"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"requiredSigners":{"title":"Transaction Required Signers","description":"List or Key-Value Map of Transaction Required Signer. Among other reasons, when a transaction contains some features like Native or Plutus Scripts, is possible that it gets validated with many different verification key witnesses (signatures) combinations. To enforce a witness set or combination, you can include the verification key hashes in this list. Will use a feature in transaction's CBOR structure known as `required_signers`  ","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"optionalSigners":{"title":"Transaction Optional Signers","description":"List or Key-Value Map of Transaction Optional Signer. When a transaction contains some features like Native or Plutus Scripts, is possible that it gets validated with many different verification key witnesses (signatures) combinations. This won't alter the body, neither the transaction hash, but it affects de fee calculation. Without knowing the highest amount possible of witnesses, fee will be lower than required and transaction validation will fail. This `optionalSigners` list is meant to contain the worst amount of verification key hashes possible. It will fill transaction's witness set CBOR structure with dummy witnesses to emulate the worst amount of bytes that can be used","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"certificates":{"title":"Transaction Certificates","description":"List or Key-Value Map of TxCertificate","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TxCertificate"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxCertificate"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TxCertificate"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"witnesses":{"type":"object","properties":{"nativeScripts":{"title":"Transaction Native Script Witnesses","description":"List or Key-Value Map of Native Script Witnesses","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"plutus":{"title":"Transaction Plutus Smart Contract Witnesses","description":"Plutus Smart Contract Witnesses, consisting on Script Sources and Consumers","anyOf":[{"$ref":"common.json#/definitions/PlutusBundle"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"auxiliaryData":{"anyOf":[{"$ref":"common.json#/definitions/TxAuxiliaryData"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"options":{"type":"object","properties":{"validFromNow":{"title":"Set Valid From Now","description":"When `true`, it overrides `ttl.from` automatically with the current slot number from the node","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"coinSelection":{"type":"string","oneOf":[{"type":"string","const":"NO","title":"None","description":"No automatic coin selection. User must provide inputs manually"},{"type":"string","const":"FMR","title":"Farmer","description":"Deterministic. Chooses first the UTXOs with more ada and less native assets. It tries to avoid using UTXOs with assets as long as possible"},{"type":"string","const":"NCR","title":"Nutcracker","description":"Deterministic. Chooses first the UTXOs with more ada and MORE native assets. Tries to split asset bundles to keep the wallet with low asset concentration in the same utxo"},{"type":"string","const":"RND","title":"Random","description":"Non deterministic. Ideal for scenarios where (when possible because current UTXO distribution) concurrency is needed. This is what is used in the testnet airdrop as well"}]},"changeOptimizer":{"type":"string","oneOf":[{"type":"string","const":"NO","title":"None","description":"GC will not modify change outputs to improve UTXO setup"},{"type":"string","const":"BAL","title":"Balanced","description":"tries to keep 50% pure ADA UTXOs and 50% of 'muggles'. 50 UTXOs max in total. Each change output produced will have an ada value that will grow exponentially from the previous one"},{"type":"string","const":"SVC-XS","title":"Service Wallet [1K UTXOS x 3ADA]","description":"creates 1000 UTXOs max, trying to keep 3 ada on each. Ideal for dapps so they can have more available unlocked UTXOs, which is useful for making concurrent transactions."},{"type":"string","const":"POP","title":"Populator [not recommended]","description":"similar to the Service Wallet but parametrized by GC. It's what we are currently using for the testnet airdrop feature.It's not recommended because we may change parameters in the future."}]},"collateralCoinSelection":{"type":"string","oneOf":[{"type":"string","const":"NO","title":"None","description":"No automatic collateral coin selection. User must provide inputs manually"},{"type":"string","const":"LASLAD","title":"Less Assets Less Ada","description":"Deterministic. Chooses first the UTXOs with less native assets and less ada. It tries to avoid using UTXOs with assets and with big amounts of ada as long as possible for low risk collateral selection"}]},"setCollateralCoin":{"anyOf":[{"$ref":"common.json#/definitions/Quantity"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"addOptionalSigners":{"description":"Add `addOptionalSigners` number of dummy witnesses as placeholders to account for bytes and therefore fees for extra amount of possible signers. Sometimes the list of possible valid signers of a transaction can be variable, like with native or plutus scripts. You can set this number to the biggest amount of signers needed to successfully validate a transaction. You can also enumerate some `optionalSigners` manually, this option instead creates random key hashes and witnesses automatically","anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"autoOptionalSigners":{"anyOf":[{"type":"object","description":"Automatically detect the list of signers keys required for each feature and add dummy witnesses for all of them (placeholders to account for bytes and therefore fees). In some cases such as `nativeScript` the detected signers can be all the possible signers used inside the script, without taking any actual script execution into account","properties":{"nativeScript":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"autoRequireSigners":{"anyOf":[{"type":"object","description":"Automatically detect the list of signers keys required for each feature and add them to the `required_signers` field of the transaction to explicitly make them mandatory. In some cases such as `nativeScript` the detected signers can be all the possible signers used inside the script, without taking  any actual script execution into account","properties":{"input":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"collateral":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"nativeScript":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"certs":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"rewards":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"required":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"autoProvision":{"anyOf":[{"type":"object","description":"When some elements on a transaction are missing, but can be found elsewhere, for example on a user's Workspace, this plugins can insert them automatically when set to `true`.","properties":{"workspaceNativeScript":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"workspacePlutusScript":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"autoClean":{"anyOf":[{"type":"object","description":"Some elements on a transaction can invalidate it accidentally, like when providing a certificate to register again an already registered staking credential. When enabled, this feature will try to prevent these situations by removing these elements automatically.","properties":{"certReRegistrations":{"description":"Clean StakeRegistration certificates that will cause a stake credential re-registration error","default":true,"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"certReDeregistrations":{"description":"Clean StakeDeregistration certificates that will cause a stake credential re-deregistration error","default":true,"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"defaultIdPattern":{"title":"Default Item ID Pattern","default":"{itemType}:{key}","description":"When not individually set, each user defined transaction item will be assigned with an ID generated based on this pattern. IDs will be used on `buildTxs` API to return an `indexMap` with final in-transaction indexes. On redeemable items it has to match the redeemer ID that will consume the item. Pattern can contain this placeholder variables:`key`, `index` (list index, not final in-transaction index), `itemType` (like 'output','spend','mint','cert','reward', etc..)","anyOf":[{"title":"Default Item ID Pattern","type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}},"additionalProperties":false},"FileSystemPathMap":{"title":"File System Paths","description":"Definition of a File System Path Map, a mapping of node absolute paths and their corresponding node type definitions","type":"object","minProperties":1,"patternProperties":{"":{"oneOf":[{"title":"File Node","description":"File Data Node (hex)","type":"object","properties":{"kind":{"type":"string","const":"file"},"fileHex":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["kind","fileHex"]},{"title":"Directory Node","description":"Directory Node","type":"object","properties":{"kind":{"type":"string","const":"directory"}},"required":["kind"]},{"title":"External File Link","description":"Link to external file data. Data wont be stored again, it's just a reference to data from a prior version of this filesystem (no `fromAddresses` specified ) or from any other filesystem. Use it with caution, ensure you trust these external data sources. Data has to exist prior to the creation of this new filesystem version, newer data will not be referenced.","type":"object","properties":{"kind":{"type":"string","const":"extLink"},"fileHash":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"fromAddresses":{"title":"Data Source Addresses","description":"List or Key-Value Map of Addresses. Fragments of data could be issued by any of this addresses","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/Address"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/Address"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/Address"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"required":["kind","fileHash"]}]}}},"FileSystemSearchParams":{"title":"File System Search Parameters","description":"Definition of File System Search Parameters","type":"object","oneOf":[{"title":"Fingerprint","description":"Fingerprint","type":"object","properties":{"fingerprint":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":1,"additionalProperties":false},{"title":"Policy ID","description":"Policy ID","type":"object","properties":{"policyId":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":1,"additionalProperties":false},{"title":"Asset Name","description":"Asset Name","type":"object","properties":{"assetName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":1,"additionalProperties":false},{"title":"File Name","description":"File Name (exact match)","type":"object","properties":{"fileName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":1,"additionalProperties":false},{"title":"Absolute path","description":"Absolute path for directories and files (exact match)","type":"object","properties":{"absPath":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":1,"additionalProperties":false},{"title":"Keyword","description":"Keyword (individual file name parts and extensions)","type":"object","properties":{"keyWord":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":1,"additionalProperties":false},{"title":"File Hash","description":"SHA512 File Hash (to search by file content)","type":"object","properties":{"fileHash":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":1,"additionalProperties":false}]},"NativeScriptCBORHex":{"title":"Native Script (CBOR Hex)","description":"Require transactions to be signed using a Native Script, which is provided in `scriptHex` with hexadecimal encoding","type":"object","properties":{"scriptHex":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"NativeScriptName":{"title":"Native Script Name","description":"Require transactions to be signed using a Native Script referenced by it's artifact name within same workspace. Name is usually generated using the `namePattern` property","type":"object","properties":{"scriptName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"NativeScriptPubKeyHash":{"title":"Public Key Hash Native Script","description":"Require transactions to be signed using an specific key signature. Key is referenced by it's hash `pubKeyHashHex`","type":"object","properties":{"pubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"NativeScriptPubKeyName":{"title":"Public Key Name Native Script","description":"Require transactions to be signed using an specific key signature. Key is referenced by it's artifact name `pubKeyName` within the same workspace. Name is usually generated using the `namePattern` property ","type":"object","properties":{"pubKeyName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"NativeScriptTimelockStart":{"title":"Timelock Start Native Script","description":"Require transactions to be submitted after an specific slot number `slotNumStart` (blockchain time measure unit that equals 1 second)","type":"object","properties":{"slotNumStart":{"anyOf":[{"$ref":"common.json#/definitions/SlotNumber"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"NativeScriptTimelockExpiry":{"title":"Timelock Expiry Native Script","description":"Require transactions to be submitted before an specific slot number `slotNumEnd` (blockchain time measure unit that equals 1 second)","type":"object","properties":{"slotNumEnd":{"anyOf":[{"$ref":"common.json#/definitions/SlotNumber"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"NativeScriptAll":{"title":"All Native Script","description":"Require transactions to fullfil `all` these items from a list of native scripts","type":"object","properties":{"all":{"title":"Native Scripts","description":"List or Key-Value Map of Native Scripts","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"additionalProperties":false},"NativeScriptAny":{"title":"Any Native Script","description":"Require transactions to fullfil `any` of the items from a list of native scripts","type":"object","properties":{"any":{"title":"Native Scripts","description":"List or Key-Value Map of Native Scripts","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"additionalProperties":false},"NativeScriptAtLeastN":{"title":"At Least N Native Script","description":"Require transactions to fullfil `atLeast` a minimum number of items from a list of native scripts (`ofThese`)","type":"object","properties":{"atLeast":{"type":"number"},"ofThese":{"title":"Native Scripts","description":"List or Key-Value Map of Native Scripts","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"additionalProperties":false},"NativeScriptVariants":{"oneOf":[{"$ref":"common.json#/definitions/NativeScriptCBORHex"},{"$ref":"common.json#/definitions/NativeScriptName"},{"$ref":"common.json#/definitions/NativeScriptPubKeyHash"},{"$ref":"common.json#/definitions/NativeScriptPubKeyName"},{"$ref":"common.json#/definitions/NativeScriptTimelockStart"},{"$ref":"common.json#/definitions/NativeScriptTimelockExpiry"},{"$ref":"common.json#/definitions/NativeScriptAll"},{"$ref":"common.json#/definitions/NativeScriptAny"},{"$ref":"common.json#/definitions/NativeScriptAtLeastN"}]},"KeyDerivationParams":{"title":"Key Derivation Parameters","description":"Parameters required to derive a child key pair from wallet root private key","type":"object","oneOf":[{"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"description":"Wallet stores locally specific objects for later reuse.This is the name property of this record. Names cannot collide. Pattern can contain this placeholder variables:`key`, `index`, `kind`, `accountIndex`, `addressIndex`"},"pathPattern":{"description":"A valid BIP32-Ed25519 (Shelley) or BIP44-Ed25519 (Byron) Cardano derivation path serialized as string mask with hardening markers (`h` or `'`). Pattern can contain this placeholder variables:`key`, `index`","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"title":"Key Derivation (BIP32 Path)","description":"Derive a child key pair using a derivation path","required":["pathPattern"],"additionalProperties":false},{"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"description":"Wallet stores locally specific objects for later reuse.This is the name property of this record. Names cannot collide. Pattern can contain this placeholder variables:`key`, `index`, `kind`, `accountIndex`, `addressIndex`"},"kind":{"anyOf":[{"type":"string","enum":["spend","stake"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"accountIndex":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"addressIndex":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"title":"Key Derivation (Simple path)","description":"Derive a child key pair using simple JSON properties to generate a BIP32-Ed25519 (Shelley) derivation path","required":["kind","accountIndex","addressIndex"],"additionalProperties":false}]},"AddressBuilderParams":{"title":"Address Builder Parameters","description":"Parameters required to build Cardano Addresses","type":"object","minProperties":1,"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"spendPubKeyName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakePubKeyName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"spendNativeScriptName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakeNativeScriptName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"spendPlutusScriptName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakePlutusScriptName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"icarusPubKeyName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"spendPubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakePubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"spendScriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakeScriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"icarusPubKeyHex":{"anyOf":[{"$ref":"common.json#/definitions/BIP32PublicKeyHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"NamedArtifactParams":{"title":"Named Artifact Parameters","description":"Parameters required to create an Named Artifact. Addresses, Keys and other artifacts, with an associated Named Artifact are shown on user interface and can be referenced by name on scripts. Unnamed artifacts became orphans, present on wallet artifact store but unreachable.","type":"object","properties":{"workspaceIds":{"title":"Default Workspace Id List","description":"List or Key-Value Map of Default Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"refPattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"WorkspaceCreationParams":{"title":"Workspace Creation Parameters","description":"Parameters required to create a Workspace, a named group of addresses, keys and other artifacts. Users can switch between artifacts for instance to use more receiving addresses, multi-delegate stake, participate in DAOs, sign messages with special keys, and more... ","type":"object","properties":{"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"titlePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"descriptionPattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"signTxs":{"title":"Default `signTxs` function arguments for this Workspace","description":"Default arguments that will be used automatically for when calling `signTxs` function having this workspace selected as current on wallet user interface. Usefull for setting a default multi-signature strategy.","anyOf":[{"type":"object","properties":{"multisig":{"title":"Multi-Signature Providers","description":"List or Key-Value Map of Multi-Signature Providers","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/MultiSigProvider"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/MultiSigProvider"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/MultiSigProvider"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"additionalProperties":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},"WalletSetupLayer":{"title":"Wallet Setup Layer","description":"Definition of a Wallet Setup Layer","type":"object","oneOf":[{"title":"Key Name","description":"Create Named Key Artifact: Addresses, Keys and other artifacts, with an associated Named Artifact are shown on user interface and can be referenced by name on scripts. Unnamed artifacts became orphans, present on wallet artifact store but unreachable. ","type":"object","properties":{"workspaceIds":{"title":"Default Workspace Id List","description":"List or Key-Value Map of Default Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"title":"Pattern of item name in wallet local storage.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}],"description":"Wallet stores locally specific objects for later reuse. This is the name property of this workspace and other artifacts will reference to this name property to be included in this workspace. Names cannot collide. Pattern can contain this placeholder variables:`key`, `index`"},"refPattern":{"description":"Key reference of the Key artifact you are naming. Uses same variables as `namePattern`.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"type":{"type":"string","const":"KeyName"},"items":{"title":"Named Artifact Parameters","description":"List or Key-Value Map of Named Artifact Parameters","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NamedArtifactParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NamedArtifactParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NamedArtifactParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"minProperties":1,"required":["type"],"additionalProperties":false},{"title":"Address Name","description":"Create Named Address Artifact: Addresses, Keys and other artifacts, with an associated Named Artifact are shown on user interface and can be referenced by name on scripts. Unnamed artifacts became orphans, present on wallet artifact store but unreachable. ","type":"object","properties":{"workspaceIds":{"title":"Default Workspace Id List","description":"List or Key-Value Map of Default Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"title":"Pattern of item name in wallet local storage.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}],"description":"Wallet stores locally specific objects for later reuse. This is the name property of this workspace and other artifacts will reference to this name property to be included in this workspace. Names cannot collide. Pattern can contain this placeholder variables:`key`, `index`"},"refPattern":{"description":"Key reference of the Address artifact you are naming. Uses same variables as `namePattern`.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"type":{"type":"string","const":"AddressName"},"items":{"title":"Named Artifact Parameters","description":"List or Key-Value Map of Named Artifact Parameters","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NamedArtifactParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NamedArtifactParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NamedArtifactParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"minProperties":1,"required":["type"],"additionalProperties":false},{"title":"NativeScript Name","description":"Create Named NativeScript Artifact: Addresses, Keys and other artifacts, with an associated Named Artifact are shown on user interface and can be referenced by name on scripts. Unnamed artifacts became orphans, present on wallet artifact store but unreachable. ","type":"object","properties":{"workspaceIds":{"title":"Default Workspace Id List","description":"List or Key-Value Map of Default Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"title":"Pattern of item name in wallet local storage.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}],"description":"Wallet stores locally specific objects for later reuse. This is the name property of this workspace and other artifacts will reference to this name property to be included in this workspace. Names cannot collide. Pattern can contain this placeholder variables:`key`, `index`"},"refPattern":{"description":"Key reference of the NativeScript artifact you are naming. Uses same variables as `namePattern`.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"type":{"type":"string","const":"NativeScriptName"},"items":{"title":"Named Artifact Parameters","description":"List or Key-Value Map of Named Artifact Parameters","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NamedArtifactParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NamedArtifactParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NamedArtifactParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"minProperties":1,"required":["type"],"additionalProperties":false},{"title":"Workspace","description":"Create workspace: a named group of addresses, keys and other artifacts. Users can switch between artifacts for instance to use more receiving addresses, multi-delegate stake, participate in DAOs, sign messages with special keys, and more... ","type":"object","properties":{"workspaceIds":{"title":"Default Workspace Id List","description":"List or Key-Value Map of Default Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"title":"Pattern of item name in wallet local storage.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}],"description":"Wallet stores locally specific objects for later reuse. This is the name property of this workspace and other artifacts will reference to this name property to be included in this workspace. Names cannot collide. Pattern can contain this placeholder variables:`key`, `index`"},"titlePattern":{"description":"Title to show to users. Uses same variables as `namePattern`.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"descriptionPattern":{"description":"Description to show to users. Uses same variables as `namePattern`.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"type":{"type":"string","const":"Workspace"},"items":{"title":"Workspace Creation Parameters","description":"List or Key-Value Map of Workspace Creation Parameters","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/WorkspaceCreationParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/WorkspaceCreationParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/WorkspaceCreationParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"minProperties":1,"required":["type"],"additionalProperties":false},{"title":"Key","description":"Key Pair Derivation","type":"object","properties":{"workspaceIds":{"title":"Default Workspace Id List","description":"List or Key-Value Map of Default Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"title":"Pattern of item name in wallet local storage.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}],"description":"Wallet stores locally specific objects for later reuse.This is the name property of this record. Names cannot collide. Pattern can contain this placeholder variables:`key`, `index`, `kind`, `accountIndex`, `addressIndex`"},"type":{"type":"string","const":"Key"},"kind":{"anyOf":[{"type":"string","enum":["spend","stake"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"items":{"title":"Key Derivation Parameters","description":"List or Key-Value Map of Key Derivation Parameters","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/KeyDerivationParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/KeyDerivationParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/KeyDerivationParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"minProperties":1,"required":["type"],"additionalProperties":false},{"title":"Address","description":"Build Address","type":"object","properties":{"workspaceIds":{"title":"Default Workspace Id List","description":"List or Key-Value Map of Default Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"title":"Pattern of item name in wallet local storage.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}],"description":"Wallet stores locally specific objects for later reuse.This is the name property of this record. Names cannot collide. Pattern can contain this placeholder variables:`spendPubKeyName`, `stakePubKeyName`, `spendNativeScriptName`, `stakeNativeScriptName`, `spendPlutusScriptName`, `stakePlutusScriptName`, `icarusPubKeyName`, `spendPubKeyHashHex`, `stakePubKeyHashHex`, `spendScriptHashHex`, `stakeScriptHashHex`, `icarusPubKeyHex`, `key`, `index`"},"type":{"type":"string","const":"Address"},"items":{"title":"Address Builder Parameters","description":"List or Key-Value Map of Address Builder Parameters","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/AddressBuilderParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/AddressBuilderParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/AddressBuilderParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"minProperties":1,"required":["type"],"additionalProperties":false},{"title":"Native Script","description":"Build Native Script","type":"object","properties":{"workspaceIds":{"title":"Default Workspace Id List","description":"List or Key-Value Map of Default Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"title":"Pattern of item name in wallet local storage.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}],"description":"Wallet stores locally specific objects for later reuse.This is the name property of this record. Names cannot collide. Pattern can contain this placeholder variables:`spendPubKeyName`, `stakePubKeyName`, `spendNativeScriptName`, `stakeNativeScriptName`, `spendPlutusScriptName`, `stakePlutusScriptName`, `icarusPubKeyName`, `spendPubKeyHashHex`, `stakePubKeyHashHex`, `spendScriptHashHex`, `stakeScriptHashHex`, `icarusPubKeyHex`, `key`, `index`"},"type":{"type":"string","const":"NativeScript"},"items":{"title":"Native Script Builder Parameters","description":"List or Key-Value Map of Native Script Builder Parameters","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptBuilderParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptBuilderParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptBuilderParams"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"minProperties":1,"required":["type"],"additionalProperties":false}]},"COSE1DataSignature":{"title":"COSE1 Data Signature Structure (CIP-8)","description":"The signature of some arbitrary data signed using CIP-8 specification.","type":"object","properties":{"signature":{"anyOf":[{"$ref":"common.json#/definitions/Bytes"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"key":{"anyOf":[{"$ref":"common.json#/definitions/Bytes"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["signature","key"],"additionalProperties":false},"PasswordProvider":{"title":"Password Provider","description":"Password providers methods","type":"object","oneOf":[{"properties":{"description":{"description":"Text that will be shown to ask user the password, meant for stating the reason of the request. A warning will clarify this request was originated from outside the wallet","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"id":{"description":"Reserved for future use","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"kind":{"type":"string","const":"modal"},"weak":{"description":"If `true` will allow the input of weak passwords, otherwise a strength check will be enforced to prevent weak passwords","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"default":{"description":"The default value the password input field will have. This allows users for example to override auto-generated encryption passphrases. The ethical principle here is to always allow the user to take control of passwords and secrets, while a quick, default suggestion based on wallet-specific user data may be applied to improve user experience.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":2,"required":["kind","description"],"additionalProperties":false,"title":"Modal","description":"Password modal for manual user input"}]},"PreprocessorPasswordProvider":{"title":"Pre-Processor Password Provider","description":"Password provider methods only for pre-processor stage functions","type":"object","oneOf":[{"properties":{"kind":{"type":"string","const":"modal"},"weak":{"description":"If `true` will allow the input of weak passwords, otherwise a strength check will be enforced to prevent weak passwords","type":"boolean"},"description":{"description":"Reason why the password is being requested","type":"string"}},"minProperties":1,"required":["kind","description"],"additionalProperties":false,"title":"Modal","description":"Password modal for manual user input"},{"properties":{"kind":{"type":"string","const":"system"}},"minProperties":1,"required":["kind"],"additionalProperties":false,"title":"System Modal","description":"Special password modal for manual user input, to only decrypt wallet configuration scripts generated by the wallet or by the `saveConfig` function"}]},"MultiSigProvider":{"title":"Multi-Signature Provider","description":"Multi-Signature methods to obtain all or some missing verification key signatures for one or more transactions","type":"object","oneOf":[{"properties":{"txHashes":{"title":"Transaction Hashes","description":"Hashes of whitelisted transactions that will be attempted to get signed with this provider. List or Key-Value Map of Transaction Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"vkHashes":{"title":"Public Key Hashes","description":"Public key hashes of whitelisted key pairs that will be used to sign with this provider. List or Key-Value Map of Public Key Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"kind":{"type":"string","const":"SignaturePackage"},"mode":{"type":"string","const":"manual"}},"minProperties":1,"required":["kind","mode"],"additionalProperties":false,"title":"Manual","description":"Manually import an hexadecimal encoded Signature Package from one or more transactions. This package can be exported from the wallet once somebody partially or fully signs a transaction, or group of them. A Signature Package is the hexadecimal encoded CBOR of a witness set of one or more transactions combined, for example on Cardano Serialization Lib: `TransactionWitnessSet.to_hex()`"},{"properties":{"txHashes":{"title":"Transaction Hashes","description":"Hashes of whitelisted transactions that will be attempted to get signed with this provider. List or Key-Value Map of Transaction Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"vkHashes":{"title":"Public Key Hashes","description":"Public key hashes of whitelisted key pairs that will be used to sign with this provider. List or Key-Value Map of Public Key Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"kind":{"type":"string","const":"SignaturePackage"},"packageHex":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"mode":{"type":"string","const":"import"}},"minProperties":1,"required":["kind","mode","packageHex"],"additionalProperties":false,"title":"Import","description":"Import providing on `packageHex` argument an hexadecimal encoded Signature Package from one or more transactions. This package can be exported from the wallet once somebody partially or fully signs a transaction, or group of them.  A Signature Package is the hexadecimal encoded CBOR of a witness set of one or more transactions combined, for example on Cardano Serialization Lib: `TransactionWitnessSet.to_hex()`"},{"properties":{"txHashes":{"title":"Transaction Hashes","description":"Hashes of whitelisted transactions that will be attempted to get signed with this provider. List or Key-Value Map of Transaction Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"vkHashes":{"title":"Public Key Hashes","description":"Public key hashes of whitelisted key pairs that will be used to sign with this provider. List or Key-Value Map of Public Key Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"kind":{"type":"string","const":"MainAddress"}},"minProperties":1,"required":["kind"],"additionalProperties":false,"title":"Main Wallet Address","description":"Sign using available spend or stake keys from user's main wallet address ( accountIndex=0 addressIndex=0 )"},{"properties":{"txHashes":{"title":"Transaction Hashes","description":"Hashes of whitelisted transactions that will be attempted to get signed with this provider. List or Key-Value Map of Transaction Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"vkHashes":{"title":"Public Key Hashes","description":"Public key hashes of whitelisted key pairs that will be used to sign with this provider. List or Key-Value Map of Public Key Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"kind":{"type":"string","const":"CurrentWorkspace"}},"minProperties":1,"required":["kind"],"additionalProperties":false,"title":"Current Wallet Workspace","description":"Sign using available spend or stake keys of current wallet in the workspace"},{"properties":{"txHashes":{"title":"Transaction Hashes","description":"Hashes of whitelisted transactions that will be attempted to get signed with this provider. List or Key-Value Map of Transaction Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"vkHashes":{"title":"Public Key Hashes","description":"Public key hashes of whitelisted key pairs that will be used to sign with this provider. List or Key-Value Map of Public Key Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"kind":{"type":"string","const":"Roundtable"},"share":{"default":true,"description":"Share available signatures to Roundtable.","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"relays":{"title":"Roundtable GunDB Relay Peers","description":"List of Roundtable GunDB Relay Peers to connect through. This setting replace default peers by custom ones.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"minProperties":1,"required":["kind"],"additionalProperties":false,"title":"Roundtable","description":"Receive missing and share available signatures with Roundtable by connecting through the same GunDB relay peers"},{"properties":{"txHashes":{"title":"Transaction Hashes","description":"Hashes of whitelisted transactions that will be attempted to get signed with this provider. List or Key-Value Map of Transaction Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"vkHashes":{"title":"Public Key Hashes","description":"Public key hashes of whitelisted key pairs that will be used to sign with this provider. List or Key-Value Map of Public Key Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"kind":{"type":"string","const":"Unimatrix"},"id":{"default":"SHA512( SORT(txHashHexList).JOIN('-') )","description":"Only Unimatrix peers using this `id` will be able to decrypt and share signatures, transactions and other data. If missing, default value will be auto-calculated using this formula `SHA512( SORT(txHashHexList).JOIN('-') )`","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"share":{"default":true,"description":"Share available signatures through privacy preserving Unimatrix protocol","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"shareTxs":{"default":true,"description":"Share transactions to be signed through privacy preserving Unimatrix protocol","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"announceTxHashes":{"default":false,"description":"Announce transaction hashes to request their signatures through privacy preserving Unimatrix protocol","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"announceTxHashesSubPath":{"default":"signTxs","description":"Transaction hashes announcement sub path to use, path items can be separated by `/`. Other Unimatrix nodes will need to listen to this exact subpath to be able to sync into the same announcement channel. Default value is `signTxs`.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"relays":{"title":"Unimatrix GunDB Relay Peers","description":"List of Unimatrix GunDB Relay Peers to connect through. This setting replace default peers by custom ones.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"minProperties":1,"required":["kind"],"additionalProperties":false,"title":"Unimatrix","description":"Receive missing and share available signatures with Unimatrix, our encrypted privacy preserving decentralized sync protocol, by connecting to the same GunDB relay peers. To monitor, or build signing dapps and backends visit <a href=\"https://github.com/GameChangerFinance/unimatrix\" target=\"_blank\" rel=\"noopener noreferrer\"> Unimatrix Sync NPM Library </a> "},{"properties":{"txHashes":{"title":"Transaction Hashes","description":"Hashes of whitelisted transactions that will be attempted to get signed with this provider. List or Key-Value Map of Transaction Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"vkHashes":{"title":"Public Key Hashes","description":"Public key hashes of whitelisted key pairs that will be used to sign with this provider. List or Key-Value Map of Public Key Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"kind":{"type":"string","const":"GCFS"},"mode":{"type":"string","const":"broadcast"}},"minProperties":1,"required":["kind","mode"],"additionalProperties":false,"title":"GCFS Multisig request","description":"Multisig: request signatures over GCFS Protocol by broadcasting on-chain unsigned/half signed transactions CBOR (hex) "},{"properties":{"txHashes":{"title":"Transaction Hashes","description":"Hashes of whitelisted transactions that will be attempted to get signed with this provider. List or Key-Value Map of Transaction Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"vkHashes":{"title":"Public Key Hashes","description":"Public key hashes of whitelisted key pairs that will be used to sign with this provider. List or Key-Value Map of Public Key Hashes","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"kind":{"type":"string","const":"GCFS"},"mode":{"type":"string","const":"reply"}},"minProperties":1,"required":["kind","mode"],"additionalProperties":false,"title":"GCFS Multisig reply","description":"Multisig: reply with one or more transaction signatures (Signature Packages) over GCFS Protocol. Instead of signing, will only write the signatures on-chain. Use it in combination with other wallet signature providers first"}]},"ScriptArguments":{"title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},"ScriptReturnModes":{"title":"Script Return Modes","description":"Modes in which a script( a block of code), will return it results","type":"object","default":{"mode":"all"},"oneOf":[{"properties":{"mode":{"type":"string","const":"none"}},"minProperties":1,"additionalProperties":false,"title":"None","description":"Will return `undefined`, and because is not a valid JSON value it will be purged. Behaves like the result of a `function():void;` in typescript","required":["mode"]},{"properties":{"mode":{"type":"string","const":"all"}},"minProperties":1,"additionalProperties":false,"title":"All","description":"Will return all it children code block results. This is the default isomorphic behavior of the scripting language","required":["mode"]},{"properties":{"mode":{"type":"string","const":"first"}},"minProperties":1,"additionalProperties":false,"title":"First","description":"Will return the result of it's first child code block.","required":["mode"]},{"properties":{"mode":{"type":"string","const":"last"}},"minProperties":1,"additionalProperties":false,"title":"Last","description":"Will return the result of it's last child code block. This is widely used to return data back to dapps or calling agents as it allows you to group and format results at the end of the script execution","required":["mode"]},{"properties":{"mode":{"type":"string","const":"one"},"key":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":1,"additionalProperties":false,"title":"One","description":"Will return the result of one child code block, the one in the `key` name or position argument.","required":["mode","key"]},{"properties":{"mode":{"type":"string","const":"some"},"keys":{"anyOf":[{"type":"array","items":{"type":"string"}},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":1,"additionalProperties":false,"title":"Some","description":"Will return the result of some children code blocks, the ones in the `keys` name or position list argument.","required":["mode","keys"]},{"properties":{"mode":{"type":"string","const":"macro"},"exec":{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}},"minProperties":1,"additionalProperties":false,"title":"Inline Macro","description":"Will return the result of the execution of an inline scripting language macro. Useful for formatting, debugging results","required":["mode","exec"]}]},"ConditionProvider":{"title":"Conditions Provider","description":"Condition methods to be used in functions like `await`","type":"object","oneOf":[{"type":"object","properties":{"kind":{"anyOf":[{"type":"string","const":"timer"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"unit":{"anyOf":[{"type":"string","default":"seconds","enum":["year","years","y","month","months","M","week","weeks","w","day","days","d","hour","hours","h","minute","minutes","m","second","seconds","s","millisecond","milliseconds","ms"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"value":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":1,"required":["kind","value"],"additionalProperties":false,"title":"Timer","description":"Returns `true` on timeout "},{"type":"object","properties":{"kind":{"anyOf":[{"type":"string","const":"balance"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"address":{"anyOf":[{"$ref":"common.json#/definitions/Address"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"is":{"anyOf":[{"type":"string","default":"greater-or-equal","enum":["less","less-or-equal","equal","greater-or-equal","greater"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"asset":{"anyOf":[{"$ref":"common.json#/definitions/Asset"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"minProperties":1,"required":["kind","asset"],"additionalProperties":false,"title":"Balance","description":"Returns `true` once wallet asset balance meets a condition. If `address` is not specify, will use current address. If `ìs` is not specified, will default to `greater-or-equal`"}]},"NativeScriptBuilderParams":{"title":"Native Script Builder Parameters","description":"Parameters required to build Cardano Native Scripts","type":"object","oneOf":[{"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"scriptHex":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptHex"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"title":"Native Script (CBOR Hex)","description":"Require transactions to be signed using a Native Script, which is provided in `scriptHex` with hexadecimal encoding","type":"object","additionalProperties":false},{"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"scriptName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"title":"Native Script Name","description":"Require transactions to be signed using a Native Script referenced by it's artifact name within same workspace. Name is usually generated using the `namePattern` property","type":"object","additionalProperties":false},{"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"pubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"title":"Public Key Hash Native Script","description":"Require transactions to be signed using an specific key signature. Key is referenced by it's hash `pubKeyHashHex`","type":"object","additionalProperties":false},{"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"pubKeyName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"title":"Public Key Name Native Script","description":"Require transactions to be signed using an specific key signature. Key is referenced by it's artifact name `pubKeyName` within the same workspace. Name is usually generated using the `namePattern` property ","type":"object","additionalProperties":false},{"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"slotNumStart":{"anyOf":[{"$ref":"common.json#/definitions/SlotNumber"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"title":"Timelock Start Native Script","description":"Require transactions to be submitted after an specific slot number `slotNumStart` (blockchain time measure unit that equals 1 second)","type":"object","additionalProperties":false},{"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"slotNumEnd":{"anyOf":[{"$ref":"common.json#/definitions/SlotNumber"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"title":"Timelock Expiry Native Script","description":"Require transactions to be submitted before an specific slot number `slotNumEnd` (blockchain time measure unit that equals 1 second)","type":"object","additionalProperties":false},{"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"all":{"title":"Native Scripts","description":"List or Key-Value Map of Native Scripts","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"title":"All Native Script","description":"Require transactions to fullfil `all` these items from a list of native scripts","type":"object","additionalProperties":false},{"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"any":{"title":"Native Scripts","description":"List or Key-Value Map of Native Scripts","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"title":"Any Native Script","description":"Require transactions to fullfil `any` of the items from a list of native scripts","type":"object","additionalProperties":false},{"properties":{"workspaceIds":{"title":"Workspace Id List","description":"List or Key-Value Map of Workspace Id. Wallet UI will logically and visually group all items with the same workspace ids.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"atLeast":{"type":"number"},"ofThese":{"title":"Native Scripts","description":"List or Key-Value Map of Native Scripts","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptVariants"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"title":"At Least N Native Script","description":"Require transactions to fullfil `atLeast` a minimum number of items from a list of native scripts (`ofThese`)","type":"object","additionalProperties":false}]},"ScriptRequirement":{"title":"Script Requirement","description":"Wallet environment check functions with boolean operators you can nest and combine to ensure a proper context for your script execution. This JSON mini-language for environment checks is Pre-Processor-Stage only, so ISL expressions are not supported.","type":"object","properties":{"and":{"title":"and","description":"return true if every nested child returns true","oneOf":[{"type":"array","minItems":1,"items":{"$ref":"common.json#/definitions/ScriptRequirement"}},{"$ref":"common.json#/definitions/ScriptRequirement"}]},"or":{"title":"or","description":"return true if at least one nested child returns true","oneOf":[{"type":"array","minItems":1,"items":{"$ref":"common.json#/definitions/ScriptRequirement"}},{"$ref":"common.json#/definitions/ScriptRequirement"}]},"not":{"title":"not","description":"return true if the only allowed child returns false","oneOf":[{"type":"array","minItems":1,"maxItems":1,"items":{"$ref":"common.json#/definitions/ScriptRequirement"}},{"$ref":"common.json#/definitions/ScriptRequirement","maxProperties":1}]},"address":{"$ref":"common.json#/definitions/Address","type":"string","title":"address","description":"return true if wallet current address matches the address provided as argument"},"mainAddress":{"$ref":"common.json#/definitions/Address","type":"string","title":"address","description":"return true if wallet main address matches the address provided as argument"},"rewardAddress":{"$ref":"common.json#/definitions/Address","type":"string","title":"address","description":"return true if wallet current reward address matches the address provided as argument"},"mainRewardAddress":{"$ref":"common.json#/definitions/Address","type":"string","title":"address","description":"return true if wallet main reward address matches the address provided as argument"},"walletType":{"title":"walletType","description":"return true if wallet type matches the type provided as argument","type":"string","enum":["burner","mnemonic","gift","express","hardware","extension"]},"walletName":{"title":"walletName","description":"return true if wallet's name matches the name provided as argument","type":"string"},"networkTag":{"title":"networkTag","description":"return true if wallet network tag matches the tag provided as argument","type":"string","enum":["preprod","mainnet"]},"addressIn":{"title":"addressIn","description":"return true if wallet current address is included in the list of addresses provided as argument","type":"array","minItems":1,"items":{"$ref":"common.json#/definitions/Address","type":"string","title":"Wallet Address","description":"Wallet Address (Bech32)"}},"mainAddressIn":{"title":"addressIn","description":"return true if wallet main address is included in the list of addresses provided as argument","type":"array","minItems":1,"items":{"$ref":"common.json#/definitions/Address","type":"string","title":"Wallet Address","description":"Wallet Address (Bech32)"}},"rewardAddressIn":{"title":"addressIn","description":"return true if wallet current reward address is included in the list of addresses provided as argument","type":"array","minItems":1,"items":{"$ref":"common.json#/definitions/Address","type":"string","title":"Wallet Address","description":"Wallet Address (Bech32)"}},"mainRewardAddressIn":{"title":"addressIn","description":"return true if wallet main reward address is included in the list of addresses provided as argument","type":"array","minItems":1,"items":{"$ref":"common.json#/definitions/Address","type":"string","title":"Wallet Address","description":"Wallet Address (Bech32)"}},"walletTypeIn":{"title":"walletTypeIn","description":"return true if wallet type is included in the list of types provided as argument","type":"array","minItems":1,"items":{"type":"string","enum":["burner","mnemonic","gift","express","hardware","extension"]}},"walletNameIn":{"title":"walletNameIn","description":"return true if wallet name is included in the list of names provided as argument","type":"array","minItems":1,"items":{"type":"string"}},"networkTagIn":{"title":"networkTagIn","description":"return true if network tag is included in the list of tags provided as argument","type":"array","minItems":1,"items":{"type":"string","enum":["preprod","mainnet"]}},"bool":{"title":"bool","description":"utility check that returns the same boolean value provided as argument","type":"boolean"}},"minProperties":1,"additionalProperties":false}}},"await.json":{"$id":"await.json","type":"object","title":"Await condition","description":"Stops the execution of the script until a condition is met","properties":{"type":{"type":"string","const":"await"},"until":{"title":"Condition List","description":"List or Key-Value Map of Conditions","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/ConditionProvider","type":"object","title":"Conditions Provider","description":"Condition methods to be used in functions like `await`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/ConditionProvider","type":"object","title":"Conditions Provider","description":"Condition methods to be used in functions like `await`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/ConditionProvider","type":"object","title":"Conditions Provider","description":"Condition methods to be used in functions like `await`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"required":["type","until"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["await"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getPublicKeys.json":{"$id":"getPublicKeys.json","type":"object","title":"Get Public Keys","description":"Get Public Keys from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map","properties":{"type":{"type":"string","const":"getPublicKeys"},"keyPattern":{"default":"{kind}-{accountIndex}-{addressIndex}","description":"Pattern for naming each key of the resulting key-value mapping. You can use variables wrapped between `{` and `}`. Available templating variables are `limit`, `offset`, `index`, `position`, `count`, `maxOffset`, `sort`, `artifactKind`, `artifactRef`, `artifactKey`, `artifactName`, `pubKeyHashHex`, `kind`, `accountIndex`, `addressIndex`, `path`.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"limit":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"offset":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"sort":{"anyOf":[{"type":"string","enum":["ascending","descending"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"filter":{"anyOf":[{"type":"object","properties":{"name":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"kind":{"anyOf":[{"type":"string","enum":["spend","stake"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"accountIndex":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"addressIndex":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"pubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash","type":"string","title":"Public Key Hash","description":"Public Key Hash (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"pubKeyHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKey","type":"string","title":"Public Key","description":"Public Key (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"pathPrefix":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"isAccount":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"isAddress":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["shareWorkspacePublicKeys"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getAddresses.json":{"$id":"getAddresses.json","type":"object","title":"Get Addresses","description":"Get Addresses from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map.","properties":{"type":{"type":"string","const":"getAddresses"},"keyPattern":{"default":"{kind}-{paymentHashHex}-{stakingHashHex}","description":"Pattern for naming each key of the resulting key-value mapping. You can use variables wrapped between `{` and `}`. Available templating variables are `limit`, `offset`, `index`, `position`, `count`, `maxOffset`, `sort`, `artifactKind`, `artifactRef`, `artifactKey`, `artifactName`, `address`, `kind`, `paymentKeyHashHex`, `stakingKeyHashHex`, `paymentScriptHashHex`, `stakingScriptHashHex`, `paymentHashHex`, `stakingHashHex`, `rewardAddress`, `identityScriptHashHex`, `spendPubKeyName`, `stakePubKeyName`, `spendNativeScriptName`, `stakeNativeScriptName`, `spendPlutusScriptName`, `stakePlutusScriptName`, `icarusPubKeyName`, `spendCredentialName`, `stakeCredentialName`.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"limit":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"offset":{"anyOf":[{"type":"number","minimum":0},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"sort":{"anyOf":[{"type":"string","enum":["ascending","descending"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"filter":{"anyOf":[{"type":"object","properties":{"name":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"kind":{"anyOf":[{"type":"string","enum":["unknown","enterprise","base","pointer","reward"]},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"isPaymentKey":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"isStakingKey":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"isPaymentScript":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"isStakingScript":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"isScript":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"rewardAddress":{"anyOf":[{"$ref":"common.json#/definitions/Address","type":"string","title":"Wallet Address","description":"Wallet Address (Bech32)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"identityScriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash","type":"string","title":"Native Script or Plutus Script Hash","description":"Native Script or Plutus Script  (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"identityScriptHex":{"anyOf":[{"$ref":"common.json#/definitions/Bytes","type":"string","title":"Bytes (hex)","description":"Bytes in hexadecimal encoding"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"spendPubKeyName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakePubKeyName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"spendNativeScriptName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakeNativeScriptName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"spendPlutusScriptName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakePlutusScriptName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"icarusPubKeyName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"paymentKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash","type":"string","title":"Public Key Hash","description":"Public Key Hash (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakingKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash","type":"string","title":"Public Key Hash","description":"Public Key Hash (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"paymentScriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash","type":"string","title":"Native Script or Plutus Script Hash","description":"Native Script or Plutus Script  (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakingScriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash","type":"string","title":"Native Script or Plutus Script Hash","description":"Native Script or Plutus Script  (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"paymentHashHex":{"anyOf":[{"$ref":"common.json#/definitions/Bytes","type":"string","title":"Bytes (hex)","description":"Bytes in hexadecimal encoding"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakingHashHex":{"anyOf":[{"$ref":"common.json#/definitions/Bytes","type":"string","title":"Bytes (hex)","description":"Bytes in hexadecimal encoding"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"anyCredentialHashHex":{"anyOf":[{"$ref":"common.json#/definitions/Bytes","type":"string","title":"Bytes (hex)","description":"Bytes in hexadecimal encoding"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["shareWorkspaceAddresses"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"setCurrentWorkspace.json":{"$id":"setCurrentWorkspace.json","type":"object","title":"Set Current Workspace","description":"\nSet the current wallet Workspace\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n","properties":{"type":{"type":"string","const":"setCurrentWorkspace"},"workspaceId":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type","workspaceId"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["setCurrentWorkspace"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"loadConfig.json":{"$id":"loadConfig.json","type":"object","title":"Load Wallet Configuration","description":"\nConfigure different workspaces, each with it's own set of keys, addresses, stake delegations, and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n","properties":{"type":{"type":"string","const":"loadConfig"},"updateId":{"description":"If all cryptographic key derivations, address, and other artifact building succeed, and update of wallet settings in local storage will take place under this `updateId` as reference.","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"layers":{"title":"Wallet Setup Layers","description":"List or Key-Value Map of Wallet Setup Layers","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/WalletSetupLayer","type":"object","title":"Wallet Setup Layer","description":"Definition of a Wallet Setup Layer"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/WalletSetupLayer","type":"object","title":"Wallet Setup Layer","description":"Definition of a Wallet Setup Layer"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/WalletSetupLayer","type":"object","title":"Wallet Setup Layer","description":"Definition of a Wallet Setup Layer"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"required":["type","layers","updateId"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":true},"permissions":{"type":"array","const":["loadConfig"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":false}}}},"additionalProperties":false},"saveConfig.json":{"$id":"saveConfig.json","type":"object","title":"Save Wallet Configuration","description":"\nSave different workspaces, each with it's own set of keys, addresses, stake delegations and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces [here](https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md)\n","properties":{"type":{"type":"string","const":"saveConfig"},"layers":{"title":"Wallet Setup Layers","description":"List or Key-Value Map of Wallet Setup Layers","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/WalletSetupLayer","type":"object","title":"Wallet Setup Layer","description":"Definition of a Wallet Setup Layer"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/WalletSetupLayer","type":"object","title":"Wallet Setup Layer","description":"Definition of a Wallet Setup Layer"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/WalletSetupLayer","type":"object","title":"Wallet Setup Layer","description":"Definition of a Wallet Setup Layer"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"required":["type","layers"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":true},"permissions":{"type":"array","const":["saveConfig","signTxs","submitTx","loadConfig"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":false}}}},"additionalProperties":false},"enableTerminalMode.json":{"$id":"enableTerminalMode.json","type":"object","title":"Enable Terminal Mode","description":"Adapt your configuration to work better on public terminal devices. Encrypted private keys wont be persisted on browser storage, and wallet types depending on this feature will not be available, among other changes. This action cannot be undone.","properties":{"type":{"type":"string","const":"enableTerminalMode"}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":0},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["setTerminalMode"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":false}}}},"additionalProperties":false},"data.json":{"$id":"data.json","type":"object","title":"Data constant","description":"Allows you to define an arbitrary data constant. Any valid JSON type can be used.","properties":{"type":{"type":"string","const":"data"},"value":{}},"required":["type","value"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":0},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["useConstantData"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":false}}}},"additionalProperties":false},"searchFs.json":{"$id":"searchFs.json","type":"object","title":"File System Search (GCFS)","description":"Find files across all existing file systems based on a list of search parameters. Result will be a list of file URIs.","properties":{"type":{"type":"string","const":"searchFs"},"useFingerprintURIs":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"params":{"title":"File System Search Parameters","description":"List or Key-Value Map of File System Search Parameters.","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/FileSystemSearchParams","type":"object","title":"File System Search Parameters","description":"Definition of File System Search Parameters"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/FileSystemSearchParams","type":"object","title":"File System Search Parameters","description":"Definition of File System Search Parameters"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/FileSystemSearchParams","type":"object","title":"File System Search Parameters","description":"Definition of File System Search Parameters"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"required":["type","params"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["searchFs"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":false}}}},"additionalProperties":false},"buildFsTxs.json":{"$id":"buildFsTxs.json","type":"object","title":"File System Builder (GCFS)","description":"Build a list of transactions that once signed and submitted will create or update an existing fully onchain GameChanger File System (GCFS)","properties":{"type":{"type":"string","const":"buildFsTxs"},"name":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"description":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"assetName":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"mintScriptHex":{"anyOf":[{"$ref":"common.json#/definitions/NativeScriptHex","type":"string","title":"Native Script (Hex)","description":"Native Script in hexadecimal encoding"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"replicas":{"anyOf":[{"$ref":"common.json#/definitions/Quantity","type":"string","title":"Quantity","description":"Quantity (Positive BigNum)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"noAppend":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"noIndexFileNames":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"noIndexFileData":{"anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"layers":{"title":"File System Path Maps","description":"List or Key-Value Map of File System Path Maps, layers that will be merged into a final one (sort of layers matters)","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/FileSystemPathMap","type":"object","title":"File System Paths","description":"Definition of a File System Path Map, a mapping of node absolute paths and their corresponding node type definitions"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/FileSystemPathMap","type":"object","title":"File System Paths","description":"Definition of a File System Path Map, a mapping of node absolute paths and their corresponding node type definitions"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/FileSystemPathMap","type":"object","title":"File System Paths","description":"Definition of a File System Path Map, a mapping of node absolute paths and their corresponding node type definitions"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]}},"required":["type","layers","assetName"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["buildTx"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getCurrentSlot.json":{"$id":"getCurrentSlot.json","type":"object","title":"Get Current Slot Number","description":"Fetch from a backend node the current network slot number (seconds)","properties":{"type":{"type":"string","const":"getCurrentSlot"}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["getNetworkData"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getNetworkInfo.json":{"$id":"getNetworkInfo.json","type":"object","title":"Get Current Network Information","description":"Fetch from device storage current network information. Current network is the current selected network, the one the wallet UI shows on it's footer","properties":{"type":{"type":"string","const":"getNetworkInfo"}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["getNetworkData"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"query.json":{"$id":"query.json","type":"object","title":"Get data from ledger","description":"Perform a query and fetch live data from the ledger","properties":{"type":{"type":"string","const":"query"},"get":{"anyOf":[{"$ref":"common.json#/definitions/NetworkQuery","type":"object","title":"Network Query","description":"Query to fetch data from network"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type","get"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["getNetworkData"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getCurrentAddress.json":{"$id":"getCurrentAddress.json","type":"object","title":"Get Current Address","description":"Ask for the current wallet address being used","properties":{"type":{"type":"string","const":"getCurrentAddress"}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["shareWalletAddress"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getMainAddress.json":{"$id":"getMainAddress.json","type":"object","title":"Get Main Address","description":"Ask for the main wallet address. This is a Shelley Base Address using `accountIndex=0` and `addressIndex=0` for both, `Spend` and `Stake` credentials. This is the legacy default wallet address in GameChanger Wallet","properties":{"type":{"type":"string","const":"getMainAddress"}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["shareWalletAddress"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getCurrentIdentity.json":{"$id":"getCurrentIdentity.json","type":"object","title":"Get Current Address Identity","description":"Ask for the identity of the current wallet address being used. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity","properties":{"type":{"type":"string","const":"getCurrentIdentity"}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["shareAddressIdentity"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getMainIdentity.json":{"$id":"getMainIdentity.json","type":"object","title":"Get Main Address Identity","description":"Ask for the identity of the main wallet address. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity","properties":{"type":{"type":"string","const":"getMainIdentity"}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["shareAddressIdentity"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getName.json":{"$id":"getName.json","type":"object","title":"Get Name","description":"Ask for the name of a user's current wallet","properties":{"type":{"type":"string","const":"getName"}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["shareWalletName"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getType.json":{"$id":"getType.json","type":"object","title":"Get Name","description":"Ask for the type of a user's current wallet","properties":{"type":{"type":"string","const":"getType"},"extras":{"title":"Return extra data","description":"When set to `true` it will return more information, such as: \n                \nWallet brand: if Ledger or Trezor on Hardware Wallets or if Lace, Eternl, Nami on Extension Wallets.\n\nBurned Flag: You get the  `isBurned ` property, which indicates if this wallet has been created by someone else (You are not in full unique control of all the private keys).\n\nDefault Staking: `isStakingByDefault` is true if the wallet is delegating stake by default as in Burner and Gift Wallet types, also you obtain information about this feature.\n\n                ","anyOf":[{"type":"boolean","default":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["shareWalletType"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getSpendingPublicKey.json":{"$id":"getSpendingPublicKey.json","type":"object","title":"Get Spending Public Key","description":"Ask for current user's wallet spending public key","properties":{"type":{"type":"string","const":"getSpendingPublicKey"}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["shareWalletPublicKey"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"getStakingPublicKey.json":{"$id":"getStakingPublicKey.json","type":"object","title":"Get Staking Public Key","description":"Ask for current user's wallet staking public key","properties":{"type":{"type":"string","const":"getStakingPublicKey"}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["shareWalletPublicKey"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"deriveKeys.json":{"$id":"deriveKeys.json","type":"object","title":"Derive Keys","description":"Bulk derive child keys from user's root private key. This are `Volatile Keys`, keys which derivation path may not be persisted or handled properly, implying a potential loss of signability, minting, spending or staking rights. It's recommended to use `saveConfig` and `loadConfig` for creating keys to ensure users can reconstruct them in the future. Resulting object properties will be named after argument indexes or property names","properties":{"type":{"type":"string","const":"deriveKeys"},"keys":{"title":"Key Derivations","description":"List or Key-Value Map of Key Derivations","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/KeyDerivation","type":"object","title":"Key Derivation","description":"Parameters required to derive a child key pair from wallet root private key"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/KeyDerivation","type":"object","title":"Key Derivation","description":"Parameters required to derive a child key pair from wallet root private key"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/KeyDerivation","type":"object","title":"Key Derivation","description":"Parameters required to derive a child key pair from wallet root private key"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"extraPermissions":{"title":"Extra permission declaration for expected runtime behavior","description":"Some operations can require on runtime extra permissions when it arguments are dynamically generated, for example when using inline GCScript macros. If there is a difference between the amount of permissions calculated on preprocessor stage and the actual permissions being requested on runtime, script execution will stop with a critical error. If you are using inline macros and plan to require extra permissions on runtime, declare them here.","type":"object","minProperties":1,"properties":{"deriveKeys":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"shareWalletPublicKey":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1}},"additionalProperties":false}},"required":["type","keys"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":true},"customRuntimePermissionDetection":{"type":"boolean","const":true},"permissions":{"type":"array","const":["deriveVolatileKeys","shareWalletPublicKey"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"buildAddress.json":{"$id":"buildAddress.json","type":"object","title":"Build Address","description":"Build Cardano Addresses. These addresses are called `Volatile Addresses` and imply a potential loss of user funds because they may become unreachable if the construction technique is not properly persisted or handled. It's recommended to use `saveConfig` and `loadConfig` for creating addresses to ensure users can reconstruct them in the future.","properties":{"type":{"type":"string","const":"buildAddress"},"name":{"type":"string","title":"Name of this address in wallet local storage","description":"Wallet stores locally specific objects for later reuse. This is the name property of this record. Names can collide."},"addr":{"anyOf":[{"type":"object","properties":{"spendPubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash","type":"string","title":"Public Key Hash","description":"Public Key Hash (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakePubKeyHashHex":{"anyOf":[{"$ref":"common.json#/definitions/PublicKeyHash","type":"string","title":"Public Key Hash","description":"Public Key Hash (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"spendScriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash","type":"string","title":"Native Script or Plutus Script Hash","description":"Native Script or Plutus Script  (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"stakeScriptHashHex":{"anyOf":[{"$ref":"common.json#/definitions/ScriptHash","type":"string","title":"Native Script or Plutus Script Hash","description":"Native Script or Plutus Script  (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"icarusPubKeyHex":{"anyOf":[{"$ref":"common.json#/definitions/BIP32PublicKeyHex","type":"string","title":"BIP32 Public Key","description":"BIP32 Public Key (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type","name"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["createVolatileAddress","cryptography","shareWalletAddress"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"certificate.json":{"$id":"certificate.json","type":"object","title":"Certificate","description":"Build certificates","properties":{"type":{"type":"string","const":"certificate"},"name":{"type":"string","title":"Name of this certificate in wallet local storage","description":"Wallet stores locally specific objects for later reuse. This is the name property of this record. Names can collide. If name is present, this item will be stored locally on you wallet"},"cert":{"anyOf":[{"$ref":"common.json#/definitions/Certificate","type":"object","title":"Certificate","description":"Generate a certificate to delegate stake or do other supported operations"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"extras":{"title":"Return extra data","description":"When set to `true` it will return more information, not just the hexadecimal encoded CBOR of the built certificate","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type","cert"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["cryptography","createCertificates"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"nativeScript.json":{"$id":"nativeScript.json","type":"object","title":"Native Script","description":"Build native scripts","properties":{"type":{"type":"string","const":"nativeScript"},"name":{"type":"string","title":"Name of this native script in wallet local storage","description":"Wallet stores locally specific objects for later reuse. This is the name property of this record. Names can collide. If name is present, this item will be stored locally on you wallet"},"script":{"$ref":"common.json#/definitions/NativeScript"}},"required":["type","script"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["cryptography","createNativeScripts"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"plutusScript.json":{"$id":"plutusScript.json","type":"object","title":"Plutus Script","description":"Import or compile Plutus Validator Scripts (Cardano Smart Contracts) from built CBOR, or from source code using languages like Helios. \n\nWhen importing an already built Plutus Script providing CBOR, this function will also try to deserialize it and calculate it's hash.\n\nWhen building from source code like with Helios language, you are compiling Plutus Validators on-the-fly during dapp connection, and this have advantages like instant parametrization of built code, and reusability of code-artifacts like datums produced in-language. This can reduce incompatibilities as each language may use their own preferred data type formats. This function also will calculate the hash of the new compiled script.\n\nA common design pattern is to use the produced hash `scriptHashHex` to built smart contract addresses for example, while using the produced CBOR `scriptHex` and script reference CBOR `scriptRefHex` to deploy the contract on-chain or use it inlined on a transaction.\n","properties":{"type":{"type":"string","const":"plutusScript"},"name":{"type":"string","title":"Name of this Plutus Script in wallet local storage","description":"Wallet stores locally specific objects for later reuse. This is the name property of this record. Names can collide. If name is present, this item will be stored locally on you wallet"},"script":{"$ref":"common.json#/definitions/PlutusScript","type":"object","title":"Plutus Script","description":"Plutus on-chain validator code, also known as 'Cardano smart contracts'"}},"required":["type","script"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["cryptography","createPlutusScripts"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"plutusData.json":{"$id":"plutusData.json","type":"object","title":"Plutus Data","description":"Build data structures to be used by plutus scripts (or other purposes) and calculate plutus data hashes","properties":{"type":{"type":"string","const":"plutusData"},"data":{"$ref":"common.json#/definitions/PlutusData","type":"object","title":"Plutus Datum","description":"Data format supported by plutus scripts. Used on-chain on transaction Datums and Redeemers"}},"required":["type","data"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["cryptography"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"signDataWithAddress.json":{"$id":"signDataWithAddress.json","type":"object","title":"Data Signing with address (CIP-8)","description":"Sign arbitrary data `dataHex` with user's `address` obtaining a CIP-8 COSE1 data signature structure. Compatible with CIP-30 specification.","properties":{"type":{"type":"string","const":"signDataWithAddress"},"address":{"description":"Address to be used for signing `dataHex` data. Can be Enterprise, Base, Pointer or Reward Cardano Shelley Addresses.","anyOf":[{"$ref":"common.json#/definitions/Address","type":"string","title":"Wallet Address","description":"Wallet Address (Bech32)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"dataHex":{"anyOf":[{"$ref":"common.json#/definitions/Bytes","type":"string","title":"Bytes (hex)","description":"Bytes in hexadecimal encoding"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type","address","dataHex"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["signData","shareWalletPublicKey","cryptography"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"verifySignatureWithAddress.json":{"$id":"verifySignatureWithAddress.json","type":"object","title":"Verify Signature with address (CIP-8)","description":"Verify CIP-8 signatures against a provided `address`. Compatible with CIP-30 specification.","properties":{"type":{"type":"string","const":"verifySignatureWithAddress"},"address":{"description":"Address to be used for signing `dataHex` data. Can be Enterprise, Base, Pointer or Reward Cardano Shelley Addresses.","anyOf":[{"$ref":"common.json#/definitions/Address","type":"string","title":"Wallet Address","description":"Wallet Address (Bech32)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"dataHex":{"anyOf":[{"$ref":"common.json#/definitions/Bytes","type":"string","title":"Bytes (hex)","description":"Bytes in hexadecimal encoding"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"dataSignature":{"description":"CIP-8 COSE1 data signature structure","anyOf":[{"$ref":"common.json#/definitions/COSE1DataSignature","type":"object","title":"COSE1 Data Signature Structure (CIP-8)","description":"The signature of some arbitrary data signed using CIP-8 specification."},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type","address","dataHex","dataSignature"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["verify","cryptography"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"encrypt.json":{"$id":"encrypt.json","type":"object","title":"Encrypt message","description":"Encrypt an arbitrary hexadecimal encoded data `messageHex` with a password `password` using ChaCha20-Poly1305 algorithm. `salt` and  `nonce` are optional arguments, and will be provided if not set. Returns an encrypted hexadecimal encoded message.","properties":{"type":{"type":"string","const":"encrypt"},"requirePassword":{"$ref":"common.json#/definitions/PasswordProvider","type":"object","title":"Password Provider","description":"Password providers methods"},"salt":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"nonce":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"messageHex":{"anyOf":[{"$ref":"common.json#/definitions/Bytes","type":"string","title":"Bytes (hex)","description":"Bytes in hexadecimal encoding"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type","requirePassword","messageHex"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["encrypt","cryptography"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"decrypt.json":{"$id":"decrypt.json","type":"object","title":"Decrypt message","description":"Decrypt an arbitrary hexadecimal encoded data message from `encryptedMessageHex` string and a password `password` using ChaCha20-Poly1305 algorithm. Returns the hexadecimal encoded decrypted message.","properties":{"type":{"type":"string","const":"decrypt"},"requirePassword":{"$ref":"common.json#/definitions/PasswordProvider","type":"object","title":"Password Provider","description":"Password providers methods"},"encryptedMessageHex":{"anyOf":[{"$ref":"common.json#/definitions/Bytes","type":"string","title":"Bytes (hex)","description":"Bytes in hexadecimal encoding"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type","requirePassword","encryptedMessageHex"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["decrypt","cryptography"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"submitTx.json":{"$id":"submitTx.json","type":"object","title":"Transaction Submit","description":"[Deprecated]. Please use `submitTxs` function instead. Submit a signed transaction","properties":{"type":{"type":"string","const":"submitTx"},"txHex":{"type":"string"},"name":{"type":"string","title":"Name of this transaction in wallet local storage","description":"Wallet stores locally specific objects for later reuse. This is the name property of this record. Names can collide."},"later":{"type":"boolean"},"wait":{"type":"boolean"}},"required":["type","txHex"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["submitTx"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"signTx.json":{"$id":"signTx.json","type":"object","title":"Transaction Signing","description":"[Deprecated]. Please use `signTxs` function for simple and multisig transactions instead. Add missing signatures to an unsigned or half-signed transaction with user's private keys","properties":{"type":{"type":"string","const":"signTx"},"name":{"type":"string","title":"Name of this transaction in wallet local storage","description":"Wallet stores locally specific objects for later reuse. This is the name property of this record. Names can collide."},"txHex":{"type":"string"}},"required":["type","txHex"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["signTx"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"awaitTx.json":{"$id":"awaitTx.json","type":"object","title":"Await Transaction","description":"[Deprecated]. Please use `submitTxs` or `await` functions instead. Wait for a transaction to get confirmed on the blockchain.","properties":{"type":{"type":"string","const":"awaitTx"},"txHash":{"anyOf":[{"$ref":"common.json#/definitions/TransactionHash","type":"string","title":"Transaction Hash","description":"Transaction Hash (hexadecimal)"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type","txHash"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["awaitTx"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"submitTxs.json":{"$id":"submitTxs.json","type":"object","title":"Submit Transactions","description":"\nSubmit a list of signed transactions to Cardano blockchain. It can be done in several modes, and modes that can saturate backend services with large number of transactions will self-adapt in runtime in order to protect them while still fulfilling the task.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n","properties":{"type":{"type":"string","const":"submitTxs"},"txs":{"title":"Signed Transaction CBOR (Hex) List","description":"List or Key-Value Map of Signed Transaction CBOR (Hex)","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"type":"string","title":"Pattern of transaction name in wallet local storage. If missing, no custom name will be set or updated","description":"Wallet stores locally specific objects for later reuse. This is the name property of this record. Names can collide. Pattern can contain this placeholder variables: `index`,`key`,`date`,`txHash` "},"extras":{"title":"Return extra data","description":"When set to `true` it will return more information, not just the list of the hexadecimal encoded submitted transactions CBOR","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"mode":{"title":"Operation mode","description":"Storage, submit and confirmation awaiting modes","default":"parallel","type":"string","oneOf":[{"type":"string","const":"later","title":"Store Only Mode","description":"It will only store the transaction on wallet local storage without submitting. Will require a manual submit later."},{"type":"string","const":"noWait","title":"Submit all at once and continue","description":"It will submit all the transactions on list at the same time and continue the script execution without waiting their network confirmations"},{"type":"string","const":"parallel","title":"Submit all at once and wait","description":"It will submit all the transactions on list at the same time and pause the script execution until everyone gets confirmed by the network"},{"type":"string","const":"sequential","title":"Submit and wait, one by one","description":"It will treat the list as a queue, submitting and awaiting for every transaction to get confirmed by the network, one by one, in list order."}]}},"required":["type","txs"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":true},"permissions":{"type":"array","const":["submitTx"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"signTxs.json":{"$id":"signTxs.json","type":"object","title":"Sign Transactions","description":"\nSign a list of unsigned or half-signed transactions. These can be multi-signature transactions, or single-user transactions, either case you can use the `multisig` argument to specify a custom strategy (combining self-signing and or multi-signature plugins) to sign, import external and share existing signatures with other peers. The most powerful and flexible transaction multi-signature API available on Cardano.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n","properties":{"type":{"type":"string","const":"signTxs"},"txs":{"title":"Unsigned Transaction CBOR (Hex) List","description":"List or Key-Value Map of Unsigned Transaction CBOR (Hex)","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"namePattern":{"type":"string","title":"Pattern of transaction name in wallet local storage. If missing, no custom name will be set or updated","description":"Wallet stores locally specific objects for later reuse. This is the name property of this record. Names can collide. Pattern can contain this placeholder variables: `index`,`key`,`date`,`txHash`. Signed transactions are stored in stand by mode on local storage as a good practice to always let the user have a copy of what has been signed."},"multisig":{"title":"Multi-Signature Providers","description":"List or Key-Value Map of Multi-Signature Providers","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/MultiSigProvider","type":"object","title":"Multi-Signature Provider","description":"Multi-Signature methods to obtain all or some missing verification key signatures for one or more transactions"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/MultiSigProvider","type":"object","title":"Multi-Signature Provider","description":"Multi-Signature methods to obtain all or some missing verification key signatures for one or more transactions"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/MultiSigProvider","type":"object","title":"Multi-Signature Provider","description":"Multi-Signature methods to obtain all or some missing verification key signatures for one or more transactions"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"noLoop":{"title":"Disable multi-signature aggregation loop","description":"On `true` it disables the signing loop and only performs transactions review and signature aggregation once, returning early and leaving transactions potentially without all the required key witnesses.\n                             \nBy default, when missing signatures are detected on one of the provided transactions, a signing loop takes place where user is allowed to review transaction statuses again and retry aggregating or troubleshooting local or foreign key witnesses (signatures) with all the available multisignature plugins.","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}],"default":false},"partialSign":{"title":"Allow returning transactions that are not fully signed","description":"On `false` it stops script execution with an error when one or more transactions are not fully signed with all the mandatory or estimated key witnesses.\n                             \nBy default, when missing signatures are detected on one of the provided transactions it does not fail, allowing the user to troubleshoot and aggregate more signatures or for the developer to use the present ones and design a custom signing flow.","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}],"default":true},"detailedPermissions":{"title":"Set detailed permissions","description":"When `false` it disables the consumption of detailed sub permissions based on transaction features. This is insecure but useful in cases where is impossible to know in advance what permissions are going to be required.","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}],"default":true},"extras":{"title":"Return extra data","description":"When set to `true` it will return more information, not just the list of the hexadecimal encoded signed transactions CBOR","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"extraPermissions":{"title":"Extra permission declaration for expected runtime behavior","description":"Some operations can require on runtime extra permissions when it arguments are dynamically generated, for example when using inline GCScript macros. If there is a difference between the amount of permissions calculated on preprocessor stage and the actual permissions being requested on runtime, script execution will stop with a critical error. If you are using inline macros and plan to require extra permissions on runtime, declare them here.","type":"object","minProperties":1,"properties":{"signTx":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:spend:input":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:spend:input:script":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:spend:input:externally":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:spend:collateral":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:spend:collateral:script":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:spend:collateral:externally":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:reference:input":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:send:script":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:send:externally":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:send:plutusData":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:send:nativeScript":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:send:plutusScript":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:sendCollateralReturn:script":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:sendCollateralReturn:externally":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:sendCollateralReturn:plutusData":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:sendCollateralReturn:nativeScript":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:sendCollateralReturn:plutusScript":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:reward":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:reward:script":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:reward:externally":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:mint":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:burn":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:cert:stakeRegistration":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:cert:stakeDeregistration":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:cert:stakeDelegation":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:cert:poolRegistration":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:cert:poolRetirement":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:cert:genesisKeyDelegation":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:cert:moveInstantaneousRewardsCert":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:cert:voteDelegation":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:update":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:requiredSigners":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:nativeScript":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:plutusScript":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:plutusData":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:redeemer:spend":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:redeemer:mint":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:redeemer:cert":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:redeemer:data":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:auxiliaryData:metadata":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:auxiliaryData:nativeScript":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1},"signTx:auxiliaryData:plutusScript":{"title":"Times","description":"Extra times this permission will be consumed on runtime","type":"number","minimum":1}},"additionalProperties":false}},"required":["type","txs"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":true},"customRuntimePermissionDetection":{"type":"boolean","const":true},"permissions":{"type":"array","const":["signTx"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"buildTx.json":{"$id":"buildTx.json","type":"object","title":"Transaction Builder","description":"\nBuilds an unsigned transaction that once signed and submitted will send funds, store arbitrary data on-chain, mint tokens and nfts, manage stake delegation and rewards, execute smart contracts, among all the amazing Cardano protocol features you can consume with it. \n\nYou can combine all these transactions capabilities on a single transaction as long as you don't hit the maximum transaction size value specified on protocol parameters.\n\nThis is a powerful and flexible transaction-building API. These are it's key features:\n - powered by Emurgo's Cardano Serialization Lib: is a practical wrapper of this library, but callable through JSON arguments\n - automatic/manual coin selection algorithms: a healthy UTXO set is one managed by wallets, not by dapps \n - automatic/manual change output optimizers algorithms: a healthy UTXO set is one early-planned by wallets, not late-fixed by dapps\n - smart minimum coin values per output: only focus in what you need to send, protocol complexities will be solved by the wallet automatically to ensure transaction validity\n - friendly missing-balance error handling: a smart UI screen will appear to let users refill their wallets in order to continue with script execution gracefully \n - transport-agnostic solution: the first and only dapp connector API able to build transactions properly on-the-fly, allowing even static QR codes to trigger them on any user wallet. Yes, even multisig and plutus transactions! We really care for RealFi.\n - intelligent Plutus/Native script support: our internal script manager maps every transaction feature with it's plutus/native validator script, up to the point that some function arguments can be inferred automatically making developers life easier with such complex tasks. \n - developer-friendly plutus API: Things like enforcing and handling static input/mint/cert/reward indexes for redeemers is a thing of the past.\n - flexible plutus and multisig signature handling: several options allow you or the wallet to plan worst case scenario for reserving bytes for maximum amount of transaction witnesses.\n - workspace support: our multisig / script based wallet setups are totally integrated on transaction builder API allowing the most flexible and adaptive multisig wallet experience on Cardano ever experienced.\n - smart on-chain transaction features: title, descriptions, tags, parent reference, action-urls, and more are exclusive GameChanger Wallet features since 2021\n - and more...\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n","properties":{"type":{"type":"string","const":"buildTx"},"title":{"description":"On-chain title of the transaction","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"description":{"description":"On-chain description of the transaction","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"id":{"description":"On-chain custom unique identifier of the transaction","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"tags":{"title":"List of Tags","description":"List or Key-Value Map of Tags, on-chain custom list of strings or keywords to identify transactions by categories","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"indexOf":{"description":"On-chain custom index of the transaction within it's group","anyOf":[{"type":"number"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"group":{"description":"On-chain custom group name where this transaction belongs","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"parentTxHash":{"description":"On-chain custom transaction hash of a transaction considered parent of this one, or that this one is a reply to it","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"onSuccessURL":{"description":"[Deprecated]. Please use `returnURLPattern` instead. On-chain custom on success redirection relative URL with transaction hash included as URL variable","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"onPendingURL":{"description":"[Deprecated]. Please use `returnURLPattern` instead. On-chain custom on pending redirection relative URL with transaction hash included as URL variable","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"onRejectURL":{"description":"[Deprecated]. Please use `returnURLPattern` instead. On-chain custom on rejection redirection relative URL with transaction hash included as URL variable","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"returnURLPattern":{"description":"On-chain custom redirection absolute URL template with transaction hash and/or other possible variables wrapped between `{` and `}`. Available templating variables are `txHash`","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"config":{"type":"object","properties":{"noLock":{"description":"On-chain boolean value that when true will instruct GameChanger compatible wallets that load this transaction into local storage to avoid reserving UTXOs as inputs for it","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"agree":{"description":"On-chain boolean value that when true will instruct GameChanger compatible wallets to require an extra confirmation to the user prior submitting this transaction","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}}},"name":{"type":"string","title":"Name of this transaction in wallet local storage","description":"Wallet stores locally specific objects for later reuse. This is the name property of this record. Names can collide."},"tx":{"title":"Transaction","description":"A Cardano transaction definition, with fields like inputs,outputs,mints,certificates,smart contracts and metadata","anyOf":[{"$ref":"common.json#/definitions/Tx","type":"object","title":"Transaction","description":"A Cardano transaction definition, with fields like inputs,outputs,mints,certificates,smart contracts and metadata"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"extras":{"title":"Return extra data","description":"When set to `true` it will return more information, not just the hexadecimal CBOR of the built transaction","anyOf":[{"type":"boolean"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type","tx"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["buildTx"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"walletGenerator.json":{"$id":"walletGenerator.json","type":"object","title":"Wallet Generator","description":"              \nGenerates multiple password encrypted wallet files to be imported by GameChanger Wallet. \n\nThese wallets will be flagged as ̣`burned`, ethical feature that is used on UI to tell end users that these wallets has been created by someone else with a proper suggestion about moving to a fully owned wallet type.\n\nIf these wallet files are encoded as a QR code ( `qr=true`), they became the famous Gift Wallets that GameChanger offers to onboard family, friends and users on events into Cardano.\n\nWhen running with system privileges and `secrets` is set to `true` this function returns also wallet secrets like password, wallet mnemonics and root private key.\n\nWallet addresses are returned in results, meaning you can use these addresses directly on the same script to airdrop funds to them.\n\nWallet files are currently network agnostic, meaning you can import these wallets on mainnet and testnets as well.\n","properties":{"type":{"type":"string","const":"walletGenerator"},"amount":{"title":"Number of wallets","description":"Number of wallets to be generated. When using this property, all the 'default' properties will be in use to generate individual wallet data like name, description, password, etc... (Currently using this property is the only usage mode available to call this API)","anyOf":[{"type":"number","minimum":1},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"defaultKeyPattern":{"title":"Default Key Pattern","description":"This API returns a JSON object with each wallet data contained under corresponding object key. With this property you can customize these keys. Available templating variables are `index`, `key`","default":"{index}","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"defaultNamePattern":{"title":"Default Name Pattern","description":"Name of the wallet. not encrypted data on wallet file. You can use variables wrapped between `{` and `}` to automate individual item property generation. Available templating variables are `index`, `key`","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"defaultDescriptionPattern":{"title":"Default Description Pattern","description":"Description of the wallet. Not encrypted data on wallet file. You can use variables wrapped between `{` and `}` to automate individual item property generation. Available templating variables are `index`, `key`","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"defaultHintPattern":{"title":"Default Hint Pattern","description":"Password hint of the wallet, instructions, references for the end user to figure out the password, on low risk use cases password can be exposed here. Not encrypted data on wallet file. You can use variables wrapped between `{` and `}` to automate individual item property generation. Available templating variables are `index`, `key`, `password`. Be careful when using `password` variable because this will expose password in plain text","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"defaultPasswordPattern":{"title":"Default Password Pattern","description":"Password used to encrypt the wallet file with. If missing, a password generator will be used, use with caution as if not using `secrets=true` and not including `password` templating variable on hint you won't have access to the used password. You can use variables wrapped between `{` and `}` to automate individual item property generation. Available templating variables are `index`, `key`","anyOf":[{"type":"string"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"qr":{"title":"Generate QR Codes","description":"Will generate wallet and address scannable QR codes. When `secrets=true` this image files will be returned as base64 data URI PNG files. When `download=true` this images will be downloaded, ready to be printed or showed on screens to became scanned/imported on any GameChanger Wallet","anyOf":[{"type":"boolean","default":true},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"download":{"title":"Download QR Codes","description":"When using `qr=true` mode, wallet and address QR codes will be downloaded as PNG files. Filenames will be generated using wallet names.","anyOf":[{"type":"boolean","default":true},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"printable":{"title":"Use black and white QR Codes","description":"When using `qr=true` mode, wallet and address QR codes will be rendered in black and white, prepared for printing","anyOf":[{"type":"boolean","default":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"legacy":{"title":"Generate V1 Gift Wallet Addresses","description":"When using `legacy=true` mode, returned and downloaded QR encoded addresses will be compatible with legacy GameChanger V1 Gift Wallets, while the wallet encrypted files and wallet encrypted QR codes will remain importable on V1 and V2.","anyOf":[{"type":"boolean","default":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"extra":{"title":"Return extra wallet information","description":"When true, it returns extra wallet information such as main spend and stake public keys (bip32 paths: 'm/1852h/1815h/0h/0/0' and 'm/1852h/1815h/0h/2/0'), their key hashes, and the default credentials used on wallet address. This public data can be used later for example to design native scripts without requiring to import the generated wallets or providing their private keys to do so","anyOf":[{"type":"boolean","default":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"secrets":{"title":"Return wallet secrets","description":"Only when running with system privileges, it returns wallet secrets such as password, seed phrase mnemonics and root private key. Use with caution!","anyOf":[{"type":"boolean","default":false},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"required":["type","amount"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":0},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["createWallet"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":false}}}},"additionalProperties":false},"macro.json":{"$id":"macro.json","type":"object","title":"Inline Macro","description":"\nJSON templates using Inline Scripting Language (ISL), useful for formatting, processing or debugging results.\n\nWill directly return the result of the execution of an ISL block of code if a ISL string value is provided or all the results of nested ISL strings values inside a JSON object or list. \n\nFunction inputs and outputs are isomorphic, only ISL code gets replaced by it's results, keeping the former input JSON structure.\n\nYou can also provide non ISL valid strings, and these will be treated as string constants instead.\n\nGo to <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> GCScript DSL </a> and  <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/ISL.md\" target=\"_blank\" rel=\"noopener noreferrer\"> ISL </a>  for syntax guides and documentation.\n","properties":{"type":{"type":"string","const":"macro"},"run":{"anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Value","description":"A value of any JSON-supported type. It can contain Inline Scripting nested inside at any level."}]}},"required":["type","run"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["executeScript"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"importAsScript.json":{"$id":"importAsScript.json","type":"object","title":"Import external files as scripts","description":"List of external script JSON files to load into the workflow","properties":{"type":{"type":"string","const":"importAsScript"},"exportAs":{"type":"string","title":"Export results under a property with this name","description":"When set, it allows you return all the results of this script back to the DAPP under a property with this string as name"},"title":{"description":"Title of the container script","type":"string"},"description":{"description":"Description of the container script","type":"string"},"args":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"argsByKey":{"title":"Script Argument List","description":"List or Key-Value Map of Script Argument List. Each child script will have read access to it's corresponding arguments referenced by with same key. Use inline macro on `args` parameter like this inside each imported script `\"args\":\"{get('args')}\"`. Script `args` parameter will act as default arguments if key is not present on the list ","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"from":{"title":"Import external files","description":"List of external JSON files to inline into the script","anyOf":[{"title":"Array","type":"array","minItems":1,"items":{"type":"string","title":"Remote JSON file URI","description":"URI of an GCFS (`gcfs://...`) or hexadecimal (`0x...`) JSON resource to inline into the script"}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"type":"string","title":"Remote JSON file URI","description":"URI of an GCFS (`gcfs://...`) or hexadecimal (`0x...`) JSON resource to inline into the script"}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"type":"string","title":"Remote JSON file URI","description":"URI of an GCFS (`gcfs://...`) or hexadecimal (`0x...`) JSON resource to inline into the script"}},"additionalProperties":false}]},"decryptWith":{"$ref":"common.json#/definitions/PreprocessorPasswordProvider","type":"object","title":"Pre-Processor Password Provider","description":"Password provider methods only for pre-processor stage functions"}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":true},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["executeExternalScript","executeScript"]},"runtime":{"type":"boolean","const":false},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"importAsData.json":{"$id":"importAsData.json","type":"object","title":"Import external files as data","description":"List of external data JSON files to load into the workflow","properties":{"type":{"type":"string","const":"importAsData"},"from":{"title":"Import external files","description":"List of external JSON files to inline into the script","anyOf":[{"title":"Array","type":"array","minItems":1,"items":{"type":"string","title":"Remote JSON file URI","description":"URI of an GCFS (`gcfs://...`) or hexadecimal (`0x...`) JSON resource to inline into the script"}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"type":"string","title":"Remote JSON file URI","description":"URI of an GCFS (`gcfs://...`) or hexadecimal (`0x...`) JSON resource to inline into the script"}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"type":"string","title":"Remote JSON file URI","description":"URI of an GCFS (`gcfs://...`) or hexadecimal (`0x...`) JSON resource to inline into the script"}},"additionalProperties":false}]}},"required":["type"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":true},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["useExternalData","useConstantData"]},"runtime":{"type":"boolean","const":false},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"script.json":{"$id":"script.json","title":"Nested block of code","description":"Nested block of code with a sequence of API functions or other sub-nested blocks of code to execute","type":"object","properties":{"type":{"type":"string","const":"script"},"args":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"argsByKey":{"title":"Script Argument List","description":"List or Key-Value Map of Script Argument List. Each child script will have read access to it's corresponding arguments referenced by with same key. Use inline macro on `args` parameter like this inside each imported script `\"args\":\"{get('args')}\"`. Script `args` parameter will act as default arguments if key is not present on the list ","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"return":{"$ref":"common.json#/definitions/ScriptReturnModes","type":"object","title":"Script Return Modes","description":"Modes in which a script( a block of code), will return it results","default":{"mode":"all"}},"exportAs":{"type":"string","title":"Export results under a property with this name","description":"When set, it allows you return all the results of this script back to the DAPP under a property with this string as name"},"isolateCache":{"title":"Isolate cache","description":"If true, this block of code isolates it's cache scope as if it where the only one existing on context, making the rest of the code outside of it unreachable from within. Useful to keep variable paths absolute (for `get()` macro function for ex.), no matter if the block is the root block of an entire script of it is nested inside others.","type":"boolean","default":false},"title":{"title":"Title","description":"Title of the script","type":"string"},"description":{"title":"Description","description":"Description of the script","type":"string"},"require":{"title":"Script Requirement","$ref":"common.json#/definitions/ScriptRequirement","type":"object","description":"Wallet environment check functions with boolean operators you can nest and combine to ensure a proper context for your script execution. This JSON mini-language for environment checks is Pre-Processor-Stage only, so ISL expressions are not supported."},"run":{"title":"Blocks of code","description":"List of API functions or nested Blocks of Code to execute","anyOf":[{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"await.json","type":"object","title":"Await condition","description":"Stops the execution of the script until a condition is met"},{"$ref":"getPublicKeys.json","type":"object","title":"Get Public Keys","description":"Get Public Keys from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map"},{"$ref":"getAddresses.json","type":"object","title":"Get Addresses","description":"Get Addresses from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map."},{"$ref":"setCurrentWorkspace.json","type":"object","title":"Set Current Workspace","description":"\nSet the current wallet Workspace\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"loadConfig.json","type":"object","title":"Load Wallet Configuration","description":"\nConfigure different workspaces, each with it's own set of keys, addresses, stake delegations, and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"saveConfig.json","type":"object","title":"Save Wallet Configuration","description":"\nSave different workspaces, each with it's own set of keys, addresses, stake delegations and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces [here](https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md)\n"},{"$ref":"enableTerminalMode.json","type":"object","title":"Enable Terminal Mode","description":"Adapt your configuration to work better on public terminal devices. Encrypted private keys wont be persisted on browser storage, and wallet types depending on this feature will not be available, among other changes. This action cannot be undone."},{"$ref":"data.json","type":"object","title":"Data constant","description":"Allows you to define an arbitrary data constant. Any valid JSON type can be used."},{"$ref":"getCurrentAddress.json","type":"object","title":"Get Current Address","description":"Ask for the current wallet address being used"},{"$ref":"getCurrentIdentity.json","type":"object","title":"Get Current Address Identity","description":"Ask for the identity of the current wallet address being used. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getMainAddress.json","type":"object","title":"Get Main Address","description":"Ask for the main wallet address. This is a Shelley Base Address using `accountIndex=0` and `addressIndex=0` for both, `Spend` and `Stake` credentials. This is the legacy default wallet address in GameChanger Wallet"},{"$ref":"getMainIdentity.json","type":"object","title":"Get Main Address Identity","description":"Ask for the identity of the main wallet address. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getName.json","type":"object","title":"Get Name","description":"Ask for the name of a user's current wallet"},{"$ref":"getType.json","type":"object","title":"Get Name","description":"Ask for the type of a user's current wallet"},{"$ref":"getNetworkInfo.json","type":"object","title":"Get Current Network Information","description":"Fetch from device storage current network information. Current network is the current selected network, the one the wallet UI shows on it's footer"},{"$ref":"getCurrentSlot.json","type":"object","title":"Get Current Slot Number","description":"Fetch from a backend node the current network slot number (seconds)"},{"$ref":"query.json","type":"object","title":"Get data from ledger","description":"Perform a query and fetch live data from the ledger"},{"$ref":"getSpendingPublicKey.json","type":"object","title":"Get Spending Public Key","description":"Ask for current user's wallet spending public key"},{"$ref":"getStakingPublicKey.json","type":"object","title":"Get Staking Public Key","description":"Ask for current user's wallet staking public key"},{"$ref":"buildAddress.json","type":"object","title":"Build Address","description":"Build Cardano Addresses. These addresses are called `Volatile Addresses` and imply a potential loss of user funds because they may become unreachable if the construction technique is not properly persisted or handled. It's recommended to use `saveConfig` and `loadConfig` for creating addresses to ensure users can reconstruct them in the future."},{"$ref":"deriveKeys.json","type":"object","title":"Derive Keys","description":"Bulk derive child keys from user's root private key. This are `Volatile Keys`, keys which derivation path may not be persisted or handled properly, implying a potential loss of signability, minting, spending or staking rights. It's recommended to use `saveConfig` and `loadConfig` for creating keys to ensure users can reconstruct them in the future. Resulting object properties will be named after argument indexes or property names"},{"$ref":"buildTx.json","type":"object","title":"Transaction Builder","description":"\nBuilds an unsigned transaction that once signed and submitted will send funds, store arbitrary data on-chain, mint tokens and nfts, manage stake delegation and rewards, execute smart contracts, among all the amazing Cardano protocol features you can consume with it. \n\nYou can combine all these transactions capabilities on a single transaction as long as you don't hit the maximum transaction size value specified on protocol parameters.\n\nThis is a powerful and flexible transaction-building API. These are it's key features:\n - powered by Emurgo's Cardano Serialization Lib: is a practical wrapper of this library, but callable through JSON arguments\n - automatic/manual coin selection algorithms: a healthy UTXO set is one managed by wallets, not by dapps \n - automatic/manual change output optimizers algorithms: a healthy UTXO set is one early-planned by wallets, not late-fixed by dapps\n - smart minimum coin values per output: only focus in what you need to send, protocol complexities will be solved by the wallet automatically to ensure transaction validity\n - friendly missing-balance error handling: a smart UI screen will appear to let users refill their wallets in order to continue with script execution gracefully \n - transport-agnostic solution: the first and only dapp connector API able to build transactions properly on-the-fly, allowing even static QR codes to trigger them on any user wallet. Yes, even multisig and plutus transactions! We really care for RealFi.\n - intelligent Plutus/Native script support: our internal script manager maps every transaction feature with it's plutus/native validator script, up to the point that some function arguments can be inferred automatically making developers life easier with such complex tasks. \n - developer-friendly plutus API: Things like enforcing and handling static input/mint/cert/reward indexes for redeemers is a thing of the past.\n - flexible plutus and multisig signature handling: several options allow you or the wallet to plan worst case scenario for reserving bytes for maximum amount of transaction witnesses.\n - workspace support: our multisig / script based wallet setups are totally integrated on transaction builder API allowing the most flexible and adaptive multisig wallet experience on Cardano ever experienced.\n - smart on-chain transaction features: title, descriptions, tags, parent reference, action-urls, and more are exclusive GameChanger Wallet features since 2021\n - and more...\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"signTx.json","type":"object","title":"Transaction Signing","description":"[Deprecated]. Please use `signTxs` function for simple and multisig transactions instead. Add missing signatures to an unsigned or half-signed transaction with user's private keys"},{"$ref":"signTxs.json","type":"object","title":"Sign Transactions","description":"\nSign a list of unsigned or half-signed transactions. These can be multi-signature transactions, or single-user transactions, either case you can use the `multisig` argument to specify a custom strategy (combining self-signing and or multi-signature plugins) to sign, import external and share existing signatures with other peers. The most powerful and flexible transaction multi-signature API available on Cardano.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"submitTx.json","type":"object","title":"Transaction Submit","description":"[Deprecated]. Please use `submitTxs` function instead. Submit a signed transaction"},{"$ref":"submitTxs.json","type":"object","title":"Submit Transactions","description":"\nSubmit a list of signed transactions to Cardano blockchain. It can be done in several modes, and modes that can saturate backend services with large number of transactions will self-adapt in runtime in order to protect them while still fulfilling the task.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"awaitTx.json","type":"object","title":"Await Transaction","description":"[Deprecated]. Please use `submitTxs` or `await` functions instead. Wait for a transaction to get confirmed on the blockchain."},{"$ref":"signDataWithAddress.json","type":"object","title":"Data Signing with address (CIP-8)","description":"Sign arbitrary data `dataHex` with user's `address` obtaining a CIP-8 COSE1 data signature structure. Compatible with CIP-30 specification."},{"$ref":"verifySignatureWithAddress.json","type":"object","title":"Verify Signature with address (CIP-8)","description":"Verify CIP-8 signatures against a provided `address`. Compatible with CIP-30 specification."},{"$ref":"encrypt.json","type":"object","title":"Encrypt message","description":"Encrypt an arbitrary hexadecimal encoded data `messageHex` with a password `password` using ChaCha20-Poly1305 algorithm. `salt` and  `nonce` are optional arguments, and will be provided if not set. Returns an encrypted hexadecimal encoded message."},{"$ref":"decrypt.json","type":"object","title":"Decrypt message","description":"Decrypt an arbitrary hexadecimal encoded data message from `encryptedMessageHex` string and a password `password` using ChaCha20-Poly1305 algorithm. Returns the hexadecimal encoded decrypted message."},{"$ref":"searchFs.json","type":"object","title":"File System Search (GCFS)","description":"Find files across all existing file systems based on a list of search parameters. Result will be a list of file URIs."},{"$ref":"buildFsTxs.json","type":"object","title":"File System Builder (GCFS)","description":"Build a list of transactions that once signed and submitted will create or update an existing fully onchain GameChanger File System (GCFS)"},{"$ref":"certificate.json","type":"object","title":"Certificate","description":"Build certificates"},{"$ref":"nativeScript.json","type":"object","title":"Native Script","description":"Build native scripts"},{"$ref":"plutusScript.json","type":"object","title":"Plutus Script","description":"Import or compile Plutus Validator Scripts (Cardano Smart Contracts) from built CBOR, or from source code using languages like Helios. \n\nWhen importing an already built Plutus Script providing CBOR, this function will also try to deserialize it and calculate it's hash.\n\nWhen building from source code like with Helios language, you are compiling Plutus Validators on-the-fly during dapp connection, and this have advantages like instant parametrization of built code, and reusability of code-artifacts like datums produced in-language. This can reduce incompatibilities as each language may use their own preferred data type formats. This function also will calculate the hash of the new compiled script.\n\nA common design pattern is to use the produced hash `scriptHashHex` to built smart contract addresses for example, while using the produced CBOR `scriptHex` and script reference CBOR `scriptRefHex` to deploy the contract on-chain or use it inlined on a transaction.\n"},{"$ref":"plutusData.json","type":"object","title":"Plutus Data","description":"Build data structures to be used by plutus scripts (or other purposes) and calculate plutus data hashes"},{"$ref":"macro.json","type":"object","title":"Inline Macro","description":"\nJSON templates using Inline Scripting Language (ISL), useful for formatting, processing or debugging results.\n\nWill directly return the result of the execution of an ISL block of code if a ISL string value is provided or all the results of nested ISL strings values inside a JSON object or list. \n\nFunction inputs and outputs are isomorphic, only ISL code gets replaced by it's results, keeping the former input JSON structure.\n\nYou can also provide non ISL valid strings, and these will be treated as string constants instead.\n\nGo to <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> GCScript DSL </a> and  <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/ISL.md\" target=\"_blank\" rel=\"noopener noreferrer\"> ISL </a>  for syntax guides and documentation.\n"},{"$ref":"importAsScript.json","type":"object","title":"Import external files as scripts","description":"List of external script JSON files to load into the workflow"},{"$ref":"importAsData.json","type":"object","title":"Import external files as data","description":"List of external data JSON files to load into the workflow"},{"$ref":"walletGenerator.json","type":"object","title":"Wallet Generator","description":"              \nGenerates multiple password encrypted wallet files to be imported by GameChanger Wallet. \n\nThese wallets will be flagged as ̣`burned`, ethical feature that is used on UI to tell end users that these wallets has been created by someone else with a proper suggestion about moving to a fully owned wallet type.\n\nIf these wallet files are encoded as a QR code ( `qr=true`), they became the famous Gift Wallets that GameChanger offers to onboard family, friends and users on events into Cardano.\n\nWhen running with system privileges and `secrets` is set to `true` this function returns also wallet secrets like password, wallet mnemonics and root private key.\n\nWallet addresses are returned in results, meaning you can use these addresses directly on the same script to airdrop funds to them.\n\nWallet files are currently network agnostic, meaning you can import these wallets on mainnet and testnets as well.\n"},{"$ref":"script.json","type":"object","title":"Nested block of code","description":"Nested block of code with a sequence of API functions or other sub-nested blocks of code to execute"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"await.json","type":"object","title":"Await condition","description":"Stops the execution of the script until a condition is met"},{"$ref":"getPublicKeys.json","type":"object","title":"Get Public Keys","description":"Get Public Keys from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map"},{"$ref":"getAddresses.json","type":"object","title":"Get Addresses","description":"Get Addresses from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map."},{"$ref":"setCurrentWorkspace.json","type":"object","title":"Set Current Workspace","description":"\nSet the current wallet Workspace\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"loadConfig.json","type":"object","title":"Load Wallet Configuration","description":"\nConfigure different workspaces, each with it's own set of keys, addresses, stake delegations, and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"saveConfig.json","type":"object","title":"Save Wallet Configuration","description":"\nSave different workspaces, each with it's own set of keys, addresses, stake delegations and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces [here](https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md)\n"},{"$ref":"enableTerminalMode.json","type":"object","title":"Enable Terminal Mode","description":"Adapt your configuration to work better on public terminal devices. Encrypted private keys wont be persisted on browser storage, and wallet types depending on this feature will not be available, among other changes. This action cannot be undone."},{"$ref":"data.json","type":"object","title":"Data constant","description":"Allows you to define an arbitrary data constant. Any valid JSON type can be used."},{"$ref":"getCurrentAddress.json","type":"object","title":"Get Current Address","description":"Ask for the current wallet address being used"},{"$ref":"getCurrentIdentity.json","type":"object","title":"Get Current Address Identity","description":"Ask for the identity of the current wallet address being used. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getMainAddress.json","type":"object","title":"Get Main Address","description":"Ask for the main wallet address. This is a Shelley Base Address using `accountIndex=0` and `addressIndex=0` for both, `Spend` and `Stake` credentials. This is the legacy default wallet address in GameChanger Wallet"},{"$ref":"getMainIdentity.json","type":"object","title":"Get Main Address Identity","description":"Ask for the identity of the main wallet address. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getName.json","type":"object","title":"Get Name","description":"Ask for the name of a user's current wallet"},{"$ref":"getType.json","type":"object","title":"Get Name","description":"Ask for the type of a user's current wallet"},{"$ref":"getNetworkInfo.json","type":"object","title":"Get Current Network Information","description":"Fetch from device storage current network information. Current network is the current selected network, the one the wallet UI shows on it's footer"},{"$ref":"getCurrentSlot.json","type":"object","title":"Get Current Slot Number","description":"Fetch from a backend node the current network slot number (seconds)"},{"$ref":"query.json","type":"object","title":"Get data from ledger","description":"Perform a query and fetch live data from the ledger"},{"$ref":"getSpendingPublicKey.json","type":"object","title":"Get Spending Public Key","description":"Ask for current user's wallet spending public key"},{"$ref":"getStakingPublicKey.json","type":"object","title":"Get Staking Public Key","description":"Ask for current user's wallet staking public key"},{"$ref":"buildAddress.json","type":"object","title":"Build Address","description":"Build Cardano Addresses. These addresses are called `Volatile Addresses` and imply a potential loss of user funds because they may become unreachable if the construction technique is not properly persisted or handled. It's recommended to use `saveConfig` and `loadConfig` for creating addresses to ensure users can reconstruct them in the future."},{"$ref":"deriveKeys.json","type":"object","title":"Derive Keys","description":"Bulk derive child keys from user's root private key. This are `Volatile Keys`, keys which derivation path may not be persisted or handled properly, implying a potential loss of signability, minting, spending or staking rights. It's recommended to use `saveConfig` and `loadConfig` for creating keys to ensure users can reconstruct them in the future. Resulting object properties will be named after argument indexes or property names"},{"$ref":"buildTx.json","type":"object","title":"Transaction Builder","description":"\nBuilds an unsigned transaction that once signed and submitted will send funds, store arbitrary data on-chain, mint tokens and nfts, manage stake delegation and rewards, execute smart contracts, among all the amazing Cardano protocol features you can consume with it. \n\nYou can combine all these transactions capabilities on a single transaction as long as you don't hit the maximum transaction size value specified on protocol parameters.\n\nThis is a powerful and flexible transaction-building API. These are it's key features:\n - powered by Emurgo's Cardano Serialization Lib: is a practical wrapper of this library, but callable through JSON arguments\n - automatic/manual coin selection algorithms: a healthy UTXO set is one managed by wallets, not by dapps \n - automatic/manual change output optimizers algorithms: a healthy UTXO set is one early-planned by wallets, not late-fixed by dapps\n - smart minimum coin values per output: only focus in what you need to send, protocol complexities will be solved by the wallet automatically to ensure transaction validity\n - friendly missing-balance error handling: a smart UI screen will appear to let users refill their wallets in order to continue with script execution gracefully \n - transport-agnostic solution: the first and only dapp connector API able to build transactions properly on-the-fly, allowing even static QR codes to trigger them on any user wallet. Yes, even multisig and plutus transactions! We really care for RealFi.\n - intelligent Plutus/Native script support: our internal script manager maps every transaction feature with it's plutus/native validator script, up to the point that some function arguments can be inferred automatically making developers life easier with such complex tasks. \n - developer-friendly plutus API: Things like enforcing and handling static input/mint/cert/reward indexes for redeemers is a thing of the past.\n - flexible plutus and multisig signature handling: several options allow you or the wallet to plan worst case scenario for reserving bytes for maximum amount of transaction witnesses.\n - workspace support: our multisig / script based wallet setups are totally integrated on transaction builder API allowing the most flexible and adaptive multisig wallet experience on Cardano ever experienced.\n - smart on-chain transaction features: title, descriptions, tags, parent reference, action-urls, and more are exclusive GameChanger Wallet features since 2021\n - and more...\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"signTx.json","type":"object","title":"Transaction Signing","description":"[Deprecated]. Please use `signTxs` function for simple and multisig transactions instead. Add missing signatures to an unsigned or half-signed transaction with user's private keys"},{"$ref":"signTxs.json","type":"object","title":"Sign Transactions","description":"\nSign a list of unsigned or half-signed transactions. These can be multi-signature transactions, or single-user transactions, either case you can use the `multisig` argument to specify a custom strategy (combining self-signing and or multi-signature plugins) to sign, import external and share existing signatures with other peers. The most powerful and flexible transaction multi-signature API available on Cardano.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"submitTx.json","type":"object","title":"Transaction Submit","description":"[Deprecated]. Please use `submitTxs` function instead. Submit a signed transaction"},{"$ref":"submitTxs.json","type":"object","title":"Submit Transactions","description":"\nSubmit a list of signed transactions to Cardano blockchain. It can be done in several modes, and modes that can saturate backend services with large number of transactions will self-adapt in runtime in order to protect them while still fulfilling the task.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"awaitTx.json","type":"object","title":"Await Transaction","description":"[Deprecated]. Please use `submitTxs` or `await` functions instead. Wait for a transaction to get confirmed on the blockchain."},{"$ref":"signDataWithAddress.json","type":"object","title":"Data Signing with address (CIP-8)","description":"Sign arbitrary data `dataHex` with user's `address` obtaining a CIP-8 COSE1 data signature structure. Compatible with CIP-30 specification."},{"$ref":"verifySignatureWithAddress.json","type":"object","title":"Verify Signature with address (CIP-8)","description":"Verify CIP-8 signatures against a provided `address`. Compatible with CIP-30 specification."},{"$ref":"encrypt.json","type":"object","title":"Encrypt message","description":"Encrypt an arbitrary hexadecimal encoded data `messageHex` with a password `password` using ChaCha20-Poly1305 algorithm. `salt` and  `nonce` are optional arguments, and will be provided if not set. Returns an encrypted hexadecimal encoded message."},{"$ref":"decrypt.json","type":"object","title":"Decrypt message","description":"Decrypt an arbitrary hexadecimal encoded data message from `encryptedMessageHex` string and a password `password` using ChaCha20-Poly1305 algorithm. Returns the hexadecimal encoded decrypted message."},{"$ref":"searchFs.json","type":"object","title":"File System Search (GCFS)","description":"Find files across all existing file systems based on a list of search parameters. Result will be a list of file URIs."},{"$ref":"buildFsTxs.json","type":"object","title":"File System Builder (GCFS)","description":"Build a list of transactions that once signed and submitted will create or update an existing fully onchain GameChanger File System (GCFS)"},{"$ref":"certificate.json","type":"object","title":"Certificate","description":"Build certificates"},{"$ref":"nativeScript.json","type":"object","title":"Native Script","description":"Build native scripts"},{"$ref":"plutusScript.json","type":"object","title":"Plutus Script","description":"Import or compile Plutus Validator Scripts (Cardano Smart Contracts) from built CBOR, or from source code using languages like Helios. \n\nWhen importing an already built Plutus Script providing CBOR, this function will also try to deserialize it and calculate it's hash.\n\nWhen building from source code like with Helios language, you are compiling Plutus Validators on-the-fly during dapp connection, and this have advantages like instant parametrization of built code, and reusability of code-artifacts like datums produced in-language. This can reduce incompatibilities as each language may use their own preferred data type formats. This function also will calculate the hash of the new compiled script.\n\nA common design pattern is to use the produced hash `scriptHashHex` to built smart contract addresses for example, while using the produced CBOR `scriptHex` and script reference CBOR `scriptRefHex` to deploy the contract on-chain or use it inlined on a transaction.\n"},{"$ref":"plutusData.json","type":"object","title":"Plutus Data","description":"Build data structures to be used by plutus scripts (or other purposes) and calculate plutus data hashes"},{"$ref":"macro.json","type":"object","title":"Inline Macro","description":"\nJSON templates using Inline Scripting Language (ISL), useful for formatting, processing or debugging results.\n\nWill directly return the result of the execution of an ISL block of code if a ISL string value is provided or all the results of nested ISL strings values inside a JSON object or list. \n\nFunction inputs and outputs are isomorphic, only ISL code gets replaced by it's results, keeping the former input JSON structure.\n\nYou can also provide non ISL valid strings, and these will be treated as string constants instead.\n\nGo to <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> GCScript DSL </a> and  <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/ISL.md\" target=\"_blank\" rel=\"noopener noreferrer\"> ISL </a>  for syntax guides and documentation.\n"},{"$ref":"importAsScript.json","type":"object","title":"Import external files as scripts","description":"List of external script JSON files to load into the workflow"},{"$ref":"importAsData.json","type":"object","title":"Import external files as data","description":"List of external data JSON files to load into the workflow"},{"$ref":"walletGenerator.json","type":"object","title":"Wallet Generator","description":"              \nGenerates multiple password encrypted wallet files to be imported by GameChanger Wallet. \n\nThese wallets will be flagged as ̣`burned`, ethical feature that is used on UI to tell end users that these wallets has been created by someone else with a proper suggestion about moving to a fully owned wallet type.\n\nIf these wallet files are encoded as a QR code ( `qr=true`), they became the famous Gift Wallets that GameChanger offers to onboard family, friends and users on events into Cardano.\n\nWhen running with system privileges and `secrets` is set to `true` this function returns also wallet secrets like password, wallet mnemonics and root private key.\n\nWallet addresses are returned in results, meaning you can use these addresses directly on the same script to airdrop funds to them.\n\nWallet files are currently network agnostic, meaning you can import these wallets on mainnet and testnets as well.\n"},{"$ref":"script.json","type":"object","title":"Nested block of code","description":"Nested block of code with a sequence of API functions or other sub-nested blocks of code to execute"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"await.json","type":"object","title":"Await condition","description":"Stops the execution of the script until a condition is met"},{"$ref":"getPublicKeys.json","type":"object","title":"Get Public Keys","description":"Get Public Keys from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map"},{"$ref":"getAddresses.json","type":"object","title":"Get Addresses","description":"Get Addresses from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map."},{"$ref":"setCurrentWorkspace.json","type":"object","title":"Set Current Workspace","description":"\nSet the current wallet Workspace\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"loadConfig.json","type":"object","title":"Load Wallet Configuration","description":"\nConfigure different workspaces, each with it's own set of keys, addresses, stake delegations, and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"saveConfig.json","type":"object","title":"Save Wallet Configuration","description":"\nSave different workspaces, each with it's own set of keys, addresses, stake delegations and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces [here](https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md)\n"},{"$ref":"enableTerminalMode.json","type":"object","title":"Enable Terminal Mode","description":"Adapt your configuration to work better on public terminal devices. Encrypted private keys wont be persisted on browser storage, and wallet types depending on this feature will not be available, among other changes. This action cannot be undone."},{"$ref":"data.json","type":"object","title":"Data constant","description":"Allows you to define an arbitrary data constant. Any valid JSON type can be used."},{"$ref":"getCurrentAddress.json","type":"object","title":"Get Current Address","description":"Ask for the current wallet address being used"},{"$ref":"getCurrentIdentity.json","type":"object","title":"Get Current Address Identity","description":"Ask for the identity of the current wallet address being used. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getMainAddress.json","type":"object","title":"Get Main Address","description":"Ask for the main wallet address. This is a Shelley Base Address using `accountIndex=0` and `addressIndex=0` for both, `Spend` and `Stake` credentials. This is the legacy default wallet address in GameChanger Wallet"},{"$ref":"getMainIdentity.json","type":"object","title":"Get Main Address Identity","description":"Ask for the identity of the main wallet address. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getName.json","type":"object","title":"Get Name","description":"Ask for the name of a user's current wallet"},{"$ref":"getType.json","type":"object","title":"Get Name","description":"Ask for the type of a user's current wallet"},{"$ref":"getNetworkInfo.json","type":"object","title":"Get Current Network Information","description":"Fetch from device storage current network information. Current network is the current selected network, the one the wallet UI shows on it's footer"},{"$ref":"getCurrentSlot.json","type":"object","title":"Get Current Slot Number","description":"Fetch from a backend node the current network slot number (seconds)"},{"$ref":"query.json","type":"object","title":"Get data from ledger","description":"Perform a query and fetch live data from the ledger"},{"$ref":"getSpendingPublicKey.json","type":"object","title":"Get Spending Public Key","description":"Ask for current user's wallet spending public key"},{"$ref":"getStakingPublicKey.json","type":"object","title":"Get Staking Public Key","description":"Ask for current user's wallet staking public key"},{"$ref":"buildAddress.json","type":"object","title":"Build Address","description":"Build Cardano Addresses. These addresses are called `Volatile Addresses` and imply a potential loss of user funds because they may become unreachable if the construction technique is not properly persisted or handled. It's recommended to use `saveConfig` and `loadConfig` for creating addresses to ensure users can reconstruct them in the future."},{"$ref":"deriveKeys.json","type":"object","title":"Derive Keys","description":"Bulk derive child keys from user's root private key. This are `Volatile Keys`, keys which derivation path may not be persisted or handled properly, implying a potential loss of signability, minting, spending or staking rights. It's recommended to use `saveConfig` and `loadConfig` for creating keys to ensure users can reconstruct them in the future. Resulting object properties will be named after argument indexes or property names"},{"$ref":"buildTx.json","type":"object","title":"Transaction Builder","description":"\nBuilds an unsigned transaction that once signed and submitted will send funds, store arbitrary data on-chain, mint tokens and nfts, manage stake delegation and rewards, execute smart contracts, among all the amazing Cardano protocol features you can consume with it. \n\nYou can combine all these transactions capabilities on a single transaction as long as you don't hit the maximum transaction size value specified on protocol parameters.\n\nThis is a powerful and flexible transaction-building API. These are it's key features:\n - powered by Emurgo's Cardano Serialization Lib: is a practical wrapper of this library, but callable through JSON arguments\n - automatic/manual coin selection algorithms: a healthy UTXO set is one managed by wallets, not by dapps \n - automatic/manual change output optimizers algorithms: a healthy UTXO set is one early-planned by wallets, not late-fixed by dapps\n - smart minimum coin values per output: only focus in what you need to send, protocol complexities will be solved by the wallet automatically to ensure transaction validity\n - friendly missing-balance error handling: a smart UI screen will appear to let users refill their wallets in order to continue with script execution gracefully \n - transport-agnostic solution: the first and only dapp connector API able to build transactions properly on-the-fly, allowing even static QR codes to trigger them on any user wallet. Yes, even multisig and plutus transactions! We really care for RealFi.\n - intelligent Plutus/Native script support: our internal script manager maps every transaction feature with it's plutus/native validator script, up to the point that some function arguments can be inferred automatically making developers life easier with such complex tasks. \n - developer-friendly plutus API: Things like enforcing and handling static input/mint/cert/reward indexes for redeemers is a thing of the past.\n - flexible plutus and multisig signature handling: several options allow you or the wallet to plan worst case scenario for reserving bytes for maximum amount of transaction witnesses.\n - workspace support: our multisig / script based wallet setups are totally integrated on transaction builder API allowing the most flexible and adaptive multisig wallet experience on Cardano ever experienced.\n - smart on-chain transaction features: title, descriptions, tags, parent reference, action-urls, and more are exclusive GameChanger Wallet features since 2021\n - and more...\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"signTx.json","type":"object","title":"Transaction Signing","description":"[Deprecated]. Please use `signTxs` function for simple and multisig transactions instead. Add missing signatures to an unsigned or half-signed transaction with user's private keys"},{"$ref":"signTxs.json","type":"object","title":"Sign Transactions","description":"\nSign a list of unsigned or half-signed transactions. These can be multi-signature transactions, or single-user transactions, either case you can use the `multisig` argument to specify a custom strategy (combining self-signing and or multi-signature plugins) to sign, import external and share existing signatures with other peers. The most powerful and flexible transaction multi-signature API available on Cardano.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"submitTx.json","type":"object","title":"Transaction Submit","description":"[Deprecated]. Please use `submitTxs` function instead. Submit a signed transaction"},{"$ref":"submitTxs.json","type":"object","title":"Submit Transactions","description":"\nSubmit a list of signed transactions to Cardano blockchain. It can be done in several modes, and modes that can saturate backend services with large number of transactions will self-adapt in runtime in order to protect them while still fulfilling the task.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"awaitTx.json","type":"object","title":"Await Transaction","description":"[Deprecated]. Please use `submitTxs` or `await` functions instead. Wait for a transaction to get confirmed on the blockchain."},{"$ref":"signDataWithAddress.json","type":"object","title":"Data Signing with address (CIP-8)","description":"Sign arbitrary data `dataHex` with user's `address` obtaining a CIP-8 COSE1 data signature structure. Compatible with CIP-30 specification."},{"$ref":"verifySignatureWithAddress.json","type":"object","title":"Verify Signature with address (CIP-8)","description":"Verify CIP-8 signatures against a provided `address`. Compatible with CIP-30 specification."},{"$ref":"encrypt.json","type":"object","title":"Encrypt message","description":"Encrypt an arbitrary hexadecimal encoded data `messageHex` with a password `password` using ChaCha20-Poly1305 algorithm. `salt` and  `nonce` are optional arguments, and will be provided if not set. Returns an encrypted hexadecimal encoded message."},{"$ref":"decrypt.json","type":"object","title":"Decrypt message","description":"Decrypt an arbitrary hexadecimal encoded data message from `encryptedMessageHex` string and a password `password` using ChaCha20-Poly1305 algorithm. Returns the hexadecimal encoded decrypted message."},{"$ref":"searchFs.json","type":"object","title":"File System Search (GCFS)","description":"Find files across all existing file systems based on a list of search parameters. Result will be a list of file URIs."},{"$ref":"buildFsTxs.json","type":"object","title":"File System Builder (GCFS)","description":"Build a list of transactions that once signed and submitted will create or update an existing fully onchain GameChanger File System (GCFS)"},{"$ref":"certificate.json","type":"object","title":"Certificate","description":"Build certificates"},{"$ref":"nativeScript.json","type":"object","title":"Native Script","description":"Build native scripts"},{"$ref":"plutusScript.json","type":"object","title":"Plutus Script","description":"Import or compile Plutus Validator Scripts (Cardano Smart Contracts) from built CBOR, or from source code using languages like Helios. \n\nWhen importing an already built Plutus Script providing CBOR, this function will also try to deserialize it and calculate it's hash.\n\nWhen building from source code like with Helios language, you are compiling Plutus Validators on-the-fly during dapp connection, and this have advantages like instant parametrization of built code, and reusability of code-artifacts like datums produced in-language. This can reduce incompatibilities as each language may use their own preferred data type formats. This function also will calculate the hash of the new compiled script.\n\nA common design pattern is to use the produced hash `scriptHashHex` to built smart contract addresses for example, while using the produced CBOR `scriptHex` and script reference CBOR `scriptRefHex` to deploy the contract on-chain or use it inlined on a transaction.\n"},{"$ref":"plutusData.json","type":"object","title":"Plutus Data","description":"Build data structures to be used by plutus scripts (or other purposes) and calculate plutus data hashes"},{"$ref":"macro.json","type":"object","title":"Inline Macro","description":"\nJSON templates using Inline Scripting Language (ISL), useful for formatting, processing or debugging results.\n\nWill directly return the result of the execution of an ISL block of code if a ISL string value is provided or all the results of nested ISL strings values inside a JSON object or list. \n\nFunction inputs and outputs are isomorphic, only ISL code gets replaced by it's results, keeping the former input JSON structure.\n\nYou can also provide non ISL valid strings, and these will be treated as string constants instead.\n\nGo to <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> GCScript DSL </a> and  <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/ISL.md\" target=\"_blank\" rel=\"noopener noreferrer\"> ISL </a>  for syntax guides and documentation.\n"},{"$ref":"importAsScript.json","type":"object","title":"Import external files as scripts","description":"List of external script JSON files to load into the workflow"},{"$ref":"importAsData.json","type":"object","title":"Import external files as data","description":"List of external data JSON files to load into the workflow"},{"$ref":"walletGenerator.json","type":"object","title":"Wallet Generator","description":"              \nGenerates multiple password encrypted wallet files to be imported by GameChanger Wallet. \n\nThese wallets will be flagged as ̣`burned`, ethical feature that is used on UI to tell end users that these wallets has been created by someone else with a proper suggestion about moving to a fully owned wallet type.\n\nIf these wallet files are encoded as a QR code ( `qr=true`), they became the famous Gift Wallets that GameChanger offers to onboard family, friends and users on events into Cardano.\n\nWhen running with system privileges and `secrets` is set to `true` this function returns also wallet secrets like password, wallet mnemonics and root private key.\n\nWallet addresses are returned in results, meaning you can use these addresses directly on the same script to airdrop funds to them.\n\nWallet files are currently network agnostic, meaning you can import these wallets on mainnet and testnets as well.\n"},{"$ref":"script.json","type":"object","title":"Nested block of code","description":"Nested block of code with a sequence of API functions or other sub-nested blocks of code to execute"}]}},"additionalProperties":false}]}},"required":["run"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["executeScript"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false},"api.json":{"$id":"api.json","title":"Initial block of code","description":"\nWhen you code on GCScript, you always start by calling this function first. This is the initial block of code containing a sequence of GCScript functions or other sub-nested blocks of code.\n\nGo to <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> GCScript DSL </a> and  <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/ISL.md\" target=\"_blank\" rel=\"noopener noreferrer\"> ISL </a>  documentation pages for syntax guide and more.\n\n","type":"object","properties":{"type":{"type":"string","const":"script"},"args":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]},"argsByKey":{"title":"Script Argument List","description":"List or Key-Value Map of Script Argument List. Each child script will have read access to it's corresponding arguments referenced by with same key. Use inline macro on `args` parameter like this inside each imported script `\"args\":\"{get('args')}\"`. Script `args` parameter will act as default arguments if key is not present on the list ","anyOf":[{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"},{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"common.json#/definitions/ScriptArguments","title":"Script arguments","description":"Pass any kind of data as arguments to this script. During runtime, script code will be able to access it using inline macro getter this way `{get('args.foo.bar')}`"},{"$ref":"lang.json","type":"string","title":"Inline Scripting Language (ISL)","description":"Complementary programming language with functions to perform memory, string, arithmetic, cryptographic, encoding, logging, debugging, and other secondary operations"}]}},"additionalProperties":false}]},"return":{"$ref":"common.json#/definitions/ScriptReturnModes","type":"object","title":"Script Return Modes","description":"Modes in which a script( a block of code), will return it results","default":{"mode":"all"}},"exportAs":{"type":"string","title":"Export results under a property with this name","description":"When set, it allows you return all the results of this script back to the DAPP under a property with this string as name"},"isolateCache":{"title":"Isolate cache","description":"If true, this block of code isolates it's cache scope as if it where the only one existing on context, making the rest of the code outside of it unreachable from within. Useful to keep variable paths absolute (for `get()` macro function for ex.), no matter if the block is the root block of an entire script of it is nested inside others.","type":"boolean","default":false},"title":{"title":"Title","description":"Title of the script","type":"string"},"description":{"title":"Description","description":"Description of the script","type":"string"},"require":{"title":"Script Requirement","$ref":"common.json#/definitions/ScriptRequirement","type":"object","description":"Wallet environment check functions with boolean operators you can nest and combine to ensure a proper context for your script execution. This JSON mini-language for environment checks is Pre-Processor-Stage only, so ISL expressions are not supported."},"run":{"title":"Blocks of code","description":"List of API functions or nested Blocks of Code to execute","anyOf":[{"title":"Array","type":"array","minItems":1,"items":{"anyOf":[{"$ref":"await.json","type":"object","title":"Await condition","description":"Stops the execution of the script until a condition is met"},{"$ref":"getPublicKeys.json","type":"object","title":"Get Public Keys","description":"Get Public Keys from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map"},{"$ref":"getAddresses.json","type":"object","title":"Get Addresses","description":"Get Addresses from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map."},{"$ref":"setCurrentWorkspace.json","type":"object","title":"Set Current Workspace","description":"\nSet the current wallet Workspace\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"loadConfig.json","type":"object","title":"Load Wallet Configuration","description":"\nConfigure different workspaces, each with it's own set of keys, addresses, stake delegations, and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"saveConfig.json","type":"object","title":"Save Wallet Configuration","description":"\nSave different workspaces, each with it's own set of keys, addresses, stake delegations and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces [here](https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md)\n"},{"$ref":"enableTerminalMode.json","type":"object","title":"Enable Terminal Mode","description":"Adapt your configuration to work better on public terminal devices. Encrypted private keys wont be persisted on browser storage, and wallet types depending on this feature will not be available, among other changes. This action cannot be undone."},{"$ref":"data.json","type":"object","title":"Data constant","description":"Allows you to define an arbitrary data constant. Any valid JSON type can be used."},{"$ref":"getCurrentAddress.json","type":"object","title":"Get Current Address","description":"Ask for the current wallet address being used"},{"$ref":"getCurrentIdentity.json","type":"object","title":"Get Current Address Identity","description":"Ask for the identity of the current wallet address being used. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getMainAddress.json","type":"object","title":"Get Main Address","description":"Ask for the main wallet address. This is a Shelley Base Address using `accountIndex=0` and `addressIndex=0` for both, `Spend` and `Stake` credentials. This is the legacy default wallet address in GameChanger Wallet"},{"$ref":"getMainIdentity.json","type":"object","title":"Get Main Address Identity","description":"Ask for the identity of the main wallet address. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getName.json","type":"object","title":"Get Name","description":"Ask for the name of a user's current wallet"},{"$ref":"getType.json","type":"object","title":"Get Name","description":"Ask for the type of a user's current wallet"},{"$ref":"getNetworkInfo.json","type":"object","title":"Get Current Network Information","description":"Fetch from device storage current network information. Current network is the current selected network, the one the wallet UI shows on it's footer"},{"$ref":"getCurrentSlot.json","type":"object","title":"Get Current Slot Number","description":"Fetch from a backend node the current network slot number (seconds)"},{"$ref":"query.json","type":"object","title":"Get data from ledger","description":"Perform a query and fetch live data from the ledger"},{"$ref":"getSpendingPublicKey.json","type":"object","title":"Get Spending Public Key","description":"Ask for current user's wallet spending public key"},{"$ref":"getStakingPublicKey.json","type":"object","title":"Get Staking Public Key","description":"Ask for current user's wallet staking public key"},{"$ref":"buildAddress.json","type":"object","title":"Build Address","description":"Build Cardano Addresses. These addresses are called `Volatile Addresses` and imply a potential loss of user funds because they may become unreachable if the construction technique is not properly persisted or handled. It's recommended to use `saveConfig` and `loadConfig` for creating addresses to ensure users can reconstruct them in the future."},{"$ref":"deriveKeys.json","type":"object","title":"Derive Keys","description":"Bulk derive child keys from user's root private key. This are `Volatile Keys`, keys which derivation path may not be persisted or handled properly, implying a potential loss of signability, minting, spending or staking rights. It's recommended to use `saveConfig` and `loadConfig` for creating keys to ensure users can reconstruct them in the future. Resulting object properties will be named after argument indexes or property names"},{"$ref":"buildTx.json","type":"object","title":"Transaction Builder","description":"\nBuilds an unsigned transaction that once signed and submitted will send funds, store arbitrary data on-chain, mint tokens and nfts, manage stake delegation and rewards, execute smart contracts, among all the amazing Cardano protocol features you can consume with it. \n\nYou can combine all these transactions capabilities on a single transaction as long as you don't hit the maximum transaction size value specified on protocol parameters.\n\nThis is a powerful and flexible transaction-building API. These are it's key features:\n - powered by Emurgo's Cardano Serialization Lib: is a practical wrapper of this library, but callable through JSON arguments\n - automatic/manual coin selection algorithms: a healthy UTXO set is one managed by wallets, not by dapps \n - automatic/manual change output optimizers algorithms: a healthy UTXO set is one early-planned by wallets, not late-fixed by dapps\n - smart minimum coin values per output: only focus in what you need to send, protocol complexities will be solved by the wallet automatically to ensure transaction validity\n - friendly missing-balance error handling: a smart UI screen will appear to let users refill their wallets in order to continue with script execution gracefully \n - transport-agnostic solution: the first and only dapp connector API able to build transactions properly on-the-fly, allowing even static QR codes to trigger them on any user wallet. Yes, even multisig and plutus transactions! We really care for RealFi.\n - intelligent Plutus/Native script support: our internal script manager maps every transaction feature with it's plutus/native validator script, up to the point that some function arguments can be inferred automatically making developers life easier with such complex tasks. \n - developer-friendly plutus API: Things like enforcing and handling static input/mint/cert/reward indexes for redeemers is a thing of the past.\n - flexible plutus and multisig signature handling: several options allow you or the wallet to plan worst case scenario for reserving bytes for maximum amount of transaction witnesses.\n - workspace support: our multisig / script based wallet setups are totally integrated on transaction builder API allowing the most flexible and adaptive multisig wallet experience on Cardano ever experienced.\n - smart on-chain transaction features: title, descriptions, tags, parent reference, action-urls, and more are exclusive GameChanger Wallet features since 2021\n - and more...\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"signTx.json","type":"object","title":"Transaction Signing","description":"[Deprecated]. Please use `signTxs` function for simple and multisig transactions instead. Add missing signatures to an unsigned or half-signed transaction with user's private keys"},{"$ref":"signTxs.json","type":"object","title":"Sign Transactions","description":"\nSign a list of unsigned or half-signed transactions. These can be multi-signature transactions, or single-user transactions, either case you can use the `multisig` argument to specify a custom strategy (combining self-signing and or multi-signature plugins) to sign, import external and share existing signatures with other peers. The most powerful and flexible transaction multi-signature API available on Cardano.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"submitTx.json","type":"object","title":"Transaction Submit","description":"[Deprecated]. Please use `submitTxs` function instead. Submit a signed transaction"},{"$ref":"submitTxs.json","type":"object","title":"Submit Transactions","description":"\nSubmit a list of signed transactions to Cardano blockchain. It can be done in several modes, and modes that can saturate backend services with large number of transactions will self-adapt in runtime in order to protect them while still fulfilling the task.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"awaitTx.json","type":"object","title":"Await Transaction","description":"[Deprecated]. Please use `submitTxs` or `await` functions instead. Wait for a transaction to get confirmed on the blockchain."},{"$ref":"signDataWithAddress.json","type":"object","title":"Data Signing with address (CIP-8)","description":"Sign arbitrary data `dataHex` with user's `address` obtaining a CIP-8 COSE1 data signature structure. Compatible with CIP-30 specification."},{"$ref":"verifySignatureWithAddress.json","type":"object","title":"Verify Signature with address (CIP-8)","description":"Verify CIP-8 signatures against a provided `address`. Compatible with CIP-30 specification."},{"$ref":"encrypt.json","type":"object","title":"Encrypt message","description":"Encrypt an arbitrary hexadecimal encoded data `messageHex` with a password `password` using ChaCha20-Poly1305 algorithm. `salt` and  `nonce` are optional arguments, and will be provided if not set. Returns an encrypted hexadecimal encoded message."},{"$ref":"decrypt.json","type":"object","title":"Decrypt message","description":"Decrypt an arbitrary hexadecimal encoded data message from `encryptedMessageHex` string and a password `password` using ChaCha20-Poly1305 algorithm. Returns the hexadecimal encoded decrypted message."},{"$ref":"searchFs.json","type":"object","title":"File System Search (GCFS)","description":"Find files across all existing file systems based on a list of search parameters. Result will be a list of file URIs."},{"$ref":"buildFsTxs.json","type":"object","title":"File System Builder (GCFS)","description":"Build a list of transactions that once signed and submitted will create or update an existing fully onchain GameChanger File System (GCFS)"},{"$ref":"certificate.json","type":"object","title":"Certificate","description":"Build certificates"},{"$ref":"nativeScript.json","type":"object","title":"Native Script","description":"Build native scripts"},{"$ref":"plutusScript.json","type":"object","title":"Plutus Script","description":"Import or compile Plutus Validator Scripts (Cardano Smart Contracts) from built CBOR, or from source code using languages like Helios. \n\nWhen importing an already built Plutus Script providing CBOR, this function will also try to deserialize it and calculate it's hash.\n\nWhen building from source code like with Helios language, you are compiling Plutus Validators on-the-fly during dapp connection, and this have advantages like instant parametrization of built code, and reusability of code-artifacts like datums produced in-language. This can reduce incompatibilities as each language may use their own preferred data type formats. This function also will calculate the hash of the new compiled script.\n\nA common design pattern is to use the produced hash `scriptHashHex` to built smart contract addresses for example, while using the produced CBOR `scriptHex` and script reference CBOR `scriptRefHex` to deploy the contract on-chain or use it inlined on a transaction.\n"},{"$ref":"plutusData.json","type":"object","title":"Plutus Data","description":"Build data structures to be used by plutus scripts (or other purposes) and calculate plutus data hashes"},{"$ref":"macro.json","type":"object","title":"Inline Macro","description":"\nJSON templates using Inline Scripting Language (ISL), useful for formatting, processing or debugging results.\n\nWill directly return the result of the execution of an ISL block of code if a ISL string value is provided or all the results of nested ISL strings values inside a JSON object or list. \n\nFunction inputs and outputs are isomorphic, only ISL code gets replaced by it's results, keeping the former input JSON structure.\n\nYou can also provide non ISL valid strings, and these will be treated as string constants instead.\n\nGo to <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> GCScript DSL </a> and  <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/ISL.md\" target=\"_blank\" rel=\"noopener noreferrer\"> ISL </a>  for syntax guides and documentation.\n"},{"$ref":"importAsScript.json","type":"object","title":"Import external files as scripts","description":"List of external script JSON files to load into the workflow"},{"$ref":"importAsData.json","type":"object","title":"Import external files as data","description":"List of external data JSON files to load into the workflow"},{"$ref":"walletGenerator.json","type":"object","title":"Wallet Generator","description":"              \nGenerates multiple password encrypted wallet files to be imported by GameChanger Wallet. \n\nThese wallets will be flagged as ̣`burned`, ethical feature that is used on UI to tell end users that these wallets has been created by someone else with a proper suggestion about moving to a fully owned wallet type.\n\nIf these wallet files are encoded as a QR code ( `qr=true`), they became the famous Gift Wallets that GameChanger offers to onboard family, friends and users on events into Cardano.\n\nWhen running with system privileges and `secrets` is set to `true` this function returns also wallet secrets like password, wallet mnemonics and root private key.\n\nWallet addresses are returned in results, meaning you can use these addresses directly on the same script to airdrop funds to them.\n\nWallet files are currently network agnostic, meaning you can import these wallets on mainnet and testnets as well.\n"},{"$ref":"script.json","type":"object","title":"Nested block of code","description":"Nested block of code with a sequence of API functions or other sub-nested blocks of code to execute"}]}},{"title":"Numerical key map","type":"object","propertyNames":{"pattern":"^[0-9]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"await.json","type":"object","title":"Await condition","description":"Stops the execution of the script until a condition is met"},{"$ref":"getPublicKeys.json","type":"object","title":"Get Public Keys","description":"Get Public Keys from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map"},{"$ref":"getAddresses.json","type":"object","title":"Get Addresses","description":"Get Addresses from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map."},{"$ref":"setCurrentWorkspace.json","type":"object","title":"Set Current Workspace","description":"\nSet the current wallet Workspace\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"loadConfig.json","type":"object","title":"Load Wallet Configuration","description":"\nConfigure different workspaces, each with it's own set of keys, addresses, stake delegations, and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"saveConfig.json","type":"object","title":"Save Wallet Configuration","description":"\nSave different workspaces, each with it's own set of keys, addresses, stake delegations and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces [here](https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md)\n"},{"$ref":"enableTerminalMode.json","type":"object","title":"Enable Terminal Mode","description":"Adapt your configuration to work better on public terminal devices. Encrypted private keys wont be persisted on browser storage, and wallet types depending on this feature will not be available, among other changes. This action cannot be undone."},{"$ref":"data.json","type":"object","title":"Data constant","description":"Allows you to define an arbitrary data constant. Any valid JSON type can be used."},{"$ref":"getCurrentAddress.json","type":"object","title":"Get Current Address","description":"Ask for the current wallet address being used"},{"$ref":"getCurrentIdentity.json","type":"object","title":"Get Current Address Identity","description":"Ask for the identity of the current wallet address being used. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getMainAddress.json","type":"object","title":"Get Main Address","description":"Ask for the main wallet address. This is a Shelley Base Address using `accountIndex=0` and `addressIndex=0` for both, `Spend` and `Stake` credentials. This is the legacy default wallet address in GameChanger Wallet"},{"$ref":"getMainIdentity.json","type":"object","title":"Get Main Address Identity","description":"Ask for the identity of the main wallet address. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getName.json","type":"object","title":"Get Name","description":"Ask for the name of a user's current wallet"},{"$ref":"getType.json","type":"object","title":"Get Name","description":"Ask for the type of a user's current wallet"},{"$ref":"getNetworkInfo.json","type":"object","title":"Get Current Network Information","description":"Fetch from device storage current network information. Current network is the current selected network, the one the wallet UI shows on it's footer"},{"$ref":"getCurrentSlot.json","type":"object","title":"Get Current Slot Number","description":"Fetch from a backend node the current network slot number (seconds)"},{"$ref":"query.json","type":"object","title":"Get data from ledger","description":"Perform a query and fetch live data from the ledger"},{"$ref":"getSpendingPublicKey.json","type":"object","title":"Get Spending Public Key","description":"Ask for current user's wallet spending public key"},{"$ref":"getStakingPublicKey.json","type":"object","title":"Get Staking Public Key","description":"Ask for current user's wallet staking public key"},{"$ref":"buildAddress.json","type":"object","title":"Build Address","description":"Build Cardano Addresses. These addresses are called `Volatile Addresses` and imply a potential loss of user funds because they may become unreachable if the construction technique is not properly persisted or handled. It's recommended to use `saveConfig` and `loadConfig` for creating addresses to ensure users can reconstruct them in the future."},{"$ref":"deriveKeys.json","type":"object","title":"Derive Keys","description":"Bulk derive child keys from user's root private key. This are `Volatile Keys`, keys which derivation path may not be persisted or handled properly, implying a potential loss of signability, minting, spending or staking rights. It's recommended to use `saveConfig` and `loadConfig` for creating keys to ensure users can reconstruct them in the future. Resulting object properties will be named after argument indexes or property names"},{"$ref":"buildTx.json","type":"object","title":"Transaction Builder","description":"\nBuilds an unsigned transaction that once signed and submitted will send funds, store arbitrary data on-chain, mint tokens and nfts, manage stake delegation and rewards, execute smart contracts, among all the amazing Cardano protocol features you can consume with it. \n\nYou can combine all these transactions capabilities on a single transaction as long as you don't hit the maximum transaction size value specified on protocol parameters.\n\nThis is a powerful and flexible transaction-building API. These are it's key features:\n - powered by Emurgo's Cardano Serialization Lib: is a practical wrapper of this library, but callable through JSON arguments\n - automatic/manual coin selection algorithms: a healthy UTXO set is one managed by wallets, not by dapps \n - automatic/manual change output optimizers algorithms: a healthy UTXO set is one early-planned by wallets, not late-fixed by dapps\n - smart minimum coin values per output: only focus in what you need to send, protocol complexities will be solved by the wallet automatically to ensure transaction validity\n - friendly missing-balance error handling: a smart UI screen will appear to let users refill their wallets in order to continue with script execution gracefully \n - transport-agnostic solution: the first and only dapp connector API able to build transactions properly on-the-fly, allowing even static QR codes to trigger them on any user wallet. Yes, even multisig and plutus transactions! We really care for RealFi.\n - intelligent Plutus/Native script support: our internal script manager maps every transaction feature with it's plutus/native validator script, up to the point that some function arguments can be inferred automatically making developers life easier with such complex tasks. \n - developer-friendly plutus API: Things like enforcing and handling static input/mint/cert/reward indexes for redeemers is a thing of the past.\n - flexible plutus and multisig signature handling: several options allow you or the wallet to plan worst case scenario for reserving bytes for maximum amount of transaction witnesses.\n - workspace support: our multisig / script based wallet setups are totally integrated on transaction builder API allowing the most flexible and adaptive multisig wallet experience on Cardano ever experienced.\n - smart on-chain transaction features: title, descriptions, tags, parent reference, action-urls, and more are exclusive GameChanger Wallet features since 2021\n - and more...\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"signTx.json","type":"object","title":"Transaction Signing","description":"[Deprecated]. Please use `signTxs` function for simple and multisig transactions instead. Add missing signatures to an unsigned or half-signed transaction with user's private keys"},{"$ref":"signTxs.json","type":"object","title":"Sign Transactions","description":"\nSign a list of unsigned or half-signed transactions. These can be multi-signature transactions, or single-user transactions, either case you can use the `multisig` argument to specify a custom strategy (combining self-signing and or multi-signature plugins) to sign, import external and share existing signatures with other peers. The most powerful and flexible transaction multi-signature API available on Cardano.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"submitTx.json","type":"object","title":"Transaction Submit","description":"[Deprecated]. Please use `submitTxs` function instead. Submit a signed transaction"},{"$ref":"submitTxs.json","type":"object","title":"Submit Transactions","description":"\nSubmit a list of signed transactions to Cardano blockchain. It can be done in several modes, and modes that can saturate backend services with large number of transactions will self-adapt in runtime in order to protect them while still fulfilling the task.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"awaitTx.json","type":"object","title":"Await Transaction","description":"[Deprecated]. Please use `submitTxs` or `await` functions instead. Wait for a transaction to get confirmed on the blockchain."},{"$ref":"signDataWithAddress.json","type":"object","title":"Data Signing with address (CIP-8)","description":"Sign arbitrary data `dataHex` with user's `address` obtaining a CIP-8 COSE1 data signature structure. Compatible with CIP-30 specification."},{"$ref":"verifySignatureWithAddress.json","type":"object","title":"Verify Signature with address (CIP-8)","description":"Verify CIP-8 signatures against a provided `address`. Compatible with CIP-30 specification."},{"$ref":"encrypt.json","type":"object","title":"Encrypt message","description":"Encrypt an arbitrary hexadecimal encoded data `messageHex` with a password `password` using ChaCha20-Poly1305 algorithm. `salt` and  `nonce` are optional arguments, and will be provided if not set. Returns an encrypted hexadecimal encoded message."},{"$ref":"decrypt.json","type":"object","title":"Decrypt message","description":"Decrypt an arbitrary hexadecimal encoded data message from `encryptedMessageHex` string and a password `password` using ChaCha20-Poly1305 algorithm. Returns the hexadecimal encoded decrypted message."},{"$ref":"searchFs.json","type":"object","title":"File System Search (GCFS)","description":"Find files across all existing file systems based on a list of search parameters. Result will be a list of file URIs."},{"$ref":"buildFsTxs.json","type":"object","title":"File System Builder (GCFS)","description":"Build a list of transactions that once signed and submitted will create or update an existing fully onchain GameChanger File System (GCFS)"},{"$ref":"certificate.json","type":"object","title":"Certificate","description":"Build certificates"},{"$ref":"nativeScript.json","type":"object","title":"Native Script","description":"Build native scripts"},{"$ref":"plutusScript.json","type":"object","title":"Plutus Script","description":"Import or compile Plutus Validator Scripts (Cardano Smart Contracts) from built CBOR, or from source code using languages like Helios. \n\nWhen importing an already built Plutus Script providing CBOR, this function will also try to deserialize it and calculate it's hash.\n\nWhen building from source code like with Helios language, you are compiling Plutus Validators on-the-fly during dapp connection, and this have advantages like instant parametrization of built code, and reusability of code-artifacts like datums produced in-language. This can reduce incompatibilities as each language may use their own preferred data type formats. This function also will calculate the hash of the new compiled script.\n\nA common design pattern is to use the produced hash `scriptHashHex` to built smart contract addresses for example, while using the produced CBOR `scriptHex` and script reference CBOR `scriptRefHex` to deploy the contract on-chain or use it inlined on a transaction.\n"},{"$ref":"plutusData.json","type":"object","title":"Plutus Data","description":"Build data structures to be used by plutus scripts (or other purposes) and calculate plutus data hashes"},{"$ref":"macro.json","type":"object","title":"Inline Macro","description":"\nJSON templates using Inline Scripting Language (ISL), useful for formatting, processing or debugging results.\n\nWill directly return the result of the execution of an ISL block of code if a ISL string value is provided or all the results of nested ISL strings values inside a JSON object or list. \n\nFunction inputs and outputs are isomorphic, only ISL code gets replaced by it's results, keeping the former input JSON structure.\n\nYou can also provide non ISL valid strings, and these will be treated as string constants instead.\n\nGo to <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> GCScript DSL </a> and  <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/ISL.md\" target=\"_blank\" rel=\"noopener noreferrer\"> ISL </a>  for syntax guides and documentation.\n"},{"$ref":"importAsScript.json","type":"object","title":"Import external files as scripts","description":"List of external script JSON files to load into the workflow"},{"$ref":"importAsData.json","type":"object","title":"Import external files as data","description":"List of external data JSON files to load into the workflow"},{"$ref":"walletGenerator.json","type":"object","title":"Wallet Generator","description":"              \nGenerates multiple password encrypted wallet files to be imported by GameChanger Wallet. \n\nThese wallets will be flagged as ̣`burned`, ethical feature that is used on UI to tell end users that these wallets has been created by someone else with a proper suggestion about moving to a fully owned wallet type.\n\nIf these wallet files are encoded as a QR code ( `qr=true`), they became the famous Gift Wallets that GameChanger offers to onboard family, friends and users on events into Cardano.\n\nWhen running with system privileges and `secrets` is set to `true` this function returns also wallet secrets like password, wallet mnemonics and root private key.\n\nWallet addresses are returned in results, meaning you can use these addresses directly on the same script to airdrop funds to them.\n\nWallet files are currently network agnostic, meaning you can import these wallets on mainnet and testnets as well.\n"},{"$ref":"script.json","type":"object","title":"Nested block of code","description":"Nested block of code with a sequence of API functions or other sub-nested blocks of code to execute"}]}},"additionalProperties":false},{"title":"Alphanumerical key map","type":"object","propertyNames":{"pattern":"^[A-Za-z0-9_]*$"},"minProperties":1,"patternProperties":{"":{"anyOf":[{"$ref":"await.json","type":"object","title":"Await condition","description":"Stops the execution of the script until a condition is met"},{"$ref":"getPublicKeys.json","type":"object","title":"Get Public Keys","description":"Get Public Keys from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map"},{"$ref":"getAddresses.json","type":"object","title":"Get Addresses","description":"Get Addresses from current workspace artifacts stored on wallet local storage, applying a search `filter` and allowing the customization of the resulting key-value map using `keyPattern` to name the keyed results, `offset` and `limit` numbers to paginate results, and `sort` to sort the keys of the resulting map."},{"$ref":"setCurrentWorkspace.json","type":"object","title":"Set Current Workspace","description":"\nSet the current wallet Workspace\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"loadConfig.json","type":"object","title":"Load Wallet Configuration","description":"\nConfigure different workspaces, each with it's own set of keys, addresses, stake delegations, and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a>\n"},{"$ref":"saveConfig.json","type":"object","title":"Save Wallet Configuration","description":"\nSave different workspaces, each with it's own set of keys, addresses, stake delegations and more.\n\nFull documentation on how to create accounts, multisigs, keys and addresses with Workspaces [here](https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/workspaces/README.md)\n"},{"$ref":"enableTerminalMode.json","type":"object","title":"Enable Terminal Mode","description":"Adapt your configuration to work better on public terminal devices. Encrypted private keys wont be persisted on browser storage, and wallet types depending on this feature will not be available, among other changes. This action cannot be undone."},{"$ref":"data.json","type":"object","title":"Data constant","description":"Allows you to define an arbitrary data constant. Any valid JSON type can be used."},{"$ref":"getCurrentAddress.json","type":"object","title":"Get Current Address","description":"Ask for the current wallet address being used"},{"$ref":"getCurrentIdentity.json","type":"object","title":"Get Current Address Identity","description":"Ask for the identity of the current wallet address being used. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getMainAddress.json","type":"object","title":"Get Main Address","description":"Ask for the main wallet address. This is a Shelley Base Address using `accountIndex=0` and `addressIndex=0` for both, `Spend` and `Stake` credentials. This is the legacy default wallet address in GameChanger Wallet"},{"$ref":"getMainIdentity.json","type":"object","title":"Get Main Address Identity","description":"Ask for the identity of the main wallet address. An Address Identity is a deterministic default Native Script generated out of Cardano Shelley Address stake and payment credentials. The only incompatible credentials are Plutus Script Hash credentials, Public Key Hash and Native Script Hash credentials are supported. If an address contains at least one supported credential type, an identity can be generated. For Native Script Hash credentials it's required to save the former Native Scripts on current Workspace to became available for generating the address identity"},{"$ref":"getName.json","type":"object","title":"Get Name","description":"Ask for the name of a user's current wallet"},{"$ref":"getType.json","type":"object","title":"Get Name","description":"Ask for the type of a user's current wallet"},{"$ref":"getNetworkInfo.json","type":"object","title":"Get Current Network Information","description":"Fetch from device storage current network information. Current network is the current selected network, the one the wallet UI shows on it's footer"},{"$ref":"getCurrentSlot.json","type":"object","title":"Get Current Slot Number","description":"Fetch from a backend node the current network slot number (seconds)"},{"$ref":"query.json","type":"object","title":"Get data from ledger","description":"Perform a query and fetch live data from the ledger"},{"$ref":"getSpendingPublicKey.json","type":"object","title":"Get Spending Public Key","description":"Ask for current user's wallet spending public key"},{"$ref":"getStakingPublicKey.json","type":"object","title":"Get Staking Public Key","description":"Ask for current user's wallet staking public key"},{"$ref":"buildAddress.json","type":"object","title":"Build Address","description":"Build Cardano Addresses. These addresses are called `Volatile Addresses` and imply a potential loss of user funds because they may become unreachable if the construction technique is not properly persisted or handled. It's recommended to use `saveConfig` and `loadConfig` for creating addresses to ensure users can reconstruct them in the future."},{"$ref":"deriveKeys.json","type":"object","title":"Derive Keys","description":"Bulk derive child keys from user's root private key. This are `Volatile Keys`, keys which derivation path may not be persisted or handled properly, implying a potential loss of signability, minting, spending or staking rights. It's recommended to use `saveConfig` and `loadConfig` for creating keys to ensure users can reconstruct them in the future. Resulting object properties will be named after argument indexes or property names"},{"$ref":"buildTx.json","type":"object","title":"Transaction Builder","description":"\nBuilds an unsigned transaction that once signed and submitted will send funds, store arbitrary data on-chain, mint tokens and nfts, manage stake delegation and rewards, execute smart contracts, among all the amazing Cardano protocol features you can consume with it. \n\nYou can combine all these transactions capabilities on a single transaction as long as you don't hit the maximum transaction size value specified on protocol parameters.\n\nThis is a powerful and flexible transaction-building API. These are it's key features:\n - powered by Emurgo's Cardano Serialization Lib: is a practical wrapper of this library, but callable through JSON arguments\n - automatic/manual coin selection algorithms: a healthy UTXO set is one managed by wallets, not by dapps \n - automatic/manual change output optimizers algorithms: a healthy UTXO set is one early-planned by wallets, not late-fixed by dapps\n - smart minimum coin values per output: only focus in what you need to send, protocol complexities will be solved by the wallet automatically to ensure transaction validity\n - friendly missing-balance error handling: a smart UI screen will appear to let users refill their wallets in order to continue with script execution gracefully \n - transport-agnostic solution: the first and only dapp connector API able to build transactions properly on-the-fly, allowing even static QR codes to trigger them on any user wallet. Yes, even multisig and plutus transactions! We really care for RealFi.\n - intelligent Plutus/Native script support: our internal script manager maps every transaction feature with it's plutus/native validator script, up to the point that some function arguments can be inferred automatically making developers life easier with such complex tasks. \n - developer-friendly plutus API: Things like enforcing and handling static input/mint/cert/reward indexes for redeemers is a thing of the past.\n - flexible plutus and multisig signature handling: several options allow you or the wallet to plan worst case scenario for reserving bytes for maximum amount of transaction witnesses.\n - workspace support: our multisig / script based wallet setups are totally integrated on transaction builder API allowing the most flexible and adaptive multisig wallet experience on Cardano ever experienced.\n - smart on-chain transaction features: title, descriptions, tags, parent reference, action-urls, and more are exclusive GameChanger Wallet features since 2021\n - and more...\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"signTx.json","type":"object","title":"Transaction Signing","description":"[Deprecated]. Please use `signTxs` function for simple and multisig transactions instead. Add missing signatures to an unsigned or half-signed transaction with user's private keys"},{"$ref":"signTxs.json","type":"object","title":"Sign Transactions","description":"\nSign a list of unsigned or half-signed transactions. These can be multi-signature transactions, or single-user transactions, either case you can use the `multisig` argument to specify a custom strategy (combining self-signing and or multi-signature plugins) to sign, import external and share existing signatures with other peers. The most powerful and flexible transaction multi-signature API available on Cardano.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"submitTx.json","type":"object","title":"Transaction Submit","description":"[Deprecated]. Please use `submitTxs` function instead. Submit a signed transaction"},{"$ref":"submitTxs.json","type":"object","title":"Submit Transactions","description":"\nSubmit a list of signed transactions to Cardano blockchain. It can be done in several modes, and modes that can saturate backend services with large number of transactions will self-adapt in runtime in order to protect them while still fulfilling the task.\n\nFull documentation on how to build, sign and submit Transactions <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/transactions/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> here </a> .\n"},{"$ref":"awaitTx.json","type":"object","title":"Await Transaction","description":"[Deprecated]. Please use `submitTxs` or `await` functions instead. Wait for a transaction to get confirmed on the blockchain."},{"$ref":"signDataWithAddress.json","type":"object","title":"Data Signing with address (CIP-8)","description":"Sign arbitrary data `dataHex` with user's `address` obtaining a CIP-8 COSE1 data signature structure. Compatible with CIP-30 specification."},{"$ref":"verifySignatureWithAddress.json","type":"object","title":"Verify Signature with address (CIP-8)","description":"Verify CIP-8 signatures against a provided `address`. Compatible with CIP-30 specification."},{"$ref":"encrypt.json","type":"object","title":"Encrypt message","description":"Encrypt an arbitrary hexadecimal encoded data `messageHex` with a password `password` using ChaCha20-Poly1305 algorithm. `salt` and  `nonce` are optional arguments, and will be provided if not set. Returns an encrypted hexadecimal encoded message."},{"$ref":"decrypt.json","type":"object","title":"Decrypt message","description":"Decrypt an arbitrary hexadecimal encoded data message from `encryptedMessageHex` string and a password `password` using ChaCha20-Poly1305 algorithm. Returns the hexadecimal encoded decrypted message."},{"$ref":"searchFs.json","type":"object","title":"File System Search (GCFS)","description":"Find files across all existing file systems based on a list of search parameters. Result will be a list of file URIs."},{"$ref":"buildFsTxs.json","type":"object","title":"File System Builder (GCFS)","description":"Build a list of transactions that once signed and submitted will create or update an existing fully onchain GameChanger File System (GCFS)"},{"$ref":"certificate.json","type":"object","title":"Certificate","description":"Build certificates"},{"$ref":"nativeScript.json","type":"object","title":"Native Script","description":"Build native scripts"},{"$ref":"plutusScript.json","type":"object","title":"Plutus Script","description":"Import or compile Plutus Validator Scripts (Cardano Smart Contracts) from built CBOR, or from source code using languages like Helios. \n\nWhen importing an already built Plutus Script providing CBOR, this function will also try to deserialize it and calculate it's hash.\n\nWhen building from source code like with Helios language, you are compiling Plutus Validators on-the-fly during dapp connection, and this have advantages like instant parametrization of built code, and reusability of code-artifacts like datums produced in-language. This can reduce incompatibilities as each language may use their own preferred data type formats. This function also will calculate the hash of the new compiled script.\n\nA common design pattern is to use the produced hash `scriptHashHex` to built smart contract addresses for example, while using the produced CBOR `scriptHex` and script reference CBOR `scriptRefHex` to deploy the contract on-chain or use it inlined on a transaction.\n"},{"$ref":"plutusData.json","type":"object","title":"Plutus Data","description":"Build data structures to be used by plutus scripts (or other purposes) and calculate plutus data hashes"},{"$ref":"macro.json","type":"object","title":"Inline Macro","description":"\nJSON templates using Inline Scripting Language (ISL), useful for formatting, processing or debugging results.\n\nWill directly return the result of the execution of an ISL block of code if a ISL string value is provided or all the results of nested ISL strings values inside a JSON object or list. \n\nFunction inputs and outputs are isomorphic, only ISL code gets replaced by it's results, keeping the former input JSON structure.\n\nYou can also provide non ISL valid strings, and these will be treated as string constants instead.\n\nGo to <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"> GCScript DSL </a> and  <a href=\"https://github.com/GameChangerFinance/gamechanger.wallet/blob/main/docs/gcscript/ISL.md\" target=\"_blank\" rel=\"noopener noreferrer\"> ISL </a>  for syntax guides and documentation.\n"},{"$ref":"importAsScript.json","type":"object","title":"Import external files as scripts","description":"List of external script JSON files to load into the workflow"},{"$ref":"importAsData.json","type":"object","title":"Import external files as data","description":"List of external data JSON files to load into the workflow"},{"$ref":"walletGenerator.json","type":"object","title":"Wallet Generator","description":"              \nGenerates multiple password encrypted wallet files to be imported by GameChanger Wallet. \n\nThese wallets will be flagged as ̣`burned`, ethical feature that is used on UI to tell end users that these wallets has been created by someone else with a proper suggestion about moving to a fully owned wallet type.\n\nIf these wallet files are encoded as a QR code ( `qr=true`), they became the famous Gift Wallets that GameChanger offers to onboard family, friends and users on events into Cardano.\n\nWhen running with system privileges and `secrets` is set to `true` this function returns also wallet secrets like password, wallet mnemonics and root private key.\n\nWallet addresses are returned in results, meaning you can use these addresses directly on the same script to airdrop funds to them.\n\nWallet files are currently network agnostic, meaning you can import these wallets on mainnet and testnets as well.\n"},{"$ref":"script.json","type":"object","title":"Nested block of code","description":"Nested block of code with a sequence of API functions or other sub-nested blocks of code to execute"}]}},"additionalProperties":false}]},"returnURLPattern":{"type":"string","title":"Return URL pattern for exports","description":"If set, when transport is `url` or `qr` and after script execution, the user will be asked to get redirected to this URL with the possibility to add the compressed exported data inside.\n\nThis is a customizable absolute URL template that can carry exported data and/or other possible variables wrapped between `{` and `}`.\n\nAvailable templating variables are: `result`. If no matching template variables found, as fallback method it will add a URL variable `/?result=<DATA>` to the URL provided.\n\n`result` will be encoded using `encoding` property."},"transport":{"type":"string","title":"Transport for exports","description":"Transport method to use to deliver execution results back to dapp or caller entity.\n\nIf not provided, will use same transport used to stablish the communication in first place","oneOf":[{"type":"string","const":"url","title":"URL","description":"Redirects the user to a URL that packs script exports inside to communicate back results to dapp. View `returnURLPattern` for URL customization."},{"type":"string","const":"qr","title":"QR URL","description":"Shows the user a QR encoded URL that packs script exports inside to communicate back results to dapp. View `returnURLPattern` for URL customization."}]},"encoding":{"type":"string","title":"Encoding/Compression for exports","description":"Transport encoding or compression for results being delivered back to dapp or caller entity.\n\nIf not provided, will use same encoding used to stablish the communication in first place","oneOf":[{"type":"string","const":"base64url","title":"URL-Safe Base64 encoding","description":"Encoding for `url` and `qr` transports (multi-platform support). For applications where non external dependencies are possible to achieve or wanted, native browser support, or for very resource-limited hardware support. Has no checksum. Base64 URL-safe encoding as in <a href=\"https://datatracker.ietf.org/doc/html/rfc4648#section-5\" target=\"_blank\" rel=\"noopener noreferrer\"> RFC 4648-5 spec with padding </a> . "},{"type":"string","const":"json-url-lzma","title":"JSON-URL with LZMA compression","description":"Compression for `url` and `qr` transports (legacy support). For applications where nodejs/javascript dependencies are available. Has poor integrity check. Third party library <a href=\"https://github.com/masotime/json-url\" target=\"_blank\" rel=\"noopener noreferrer\"> json-url with LZMA compression </a> . "},{"type":"string","const":"gzip","title":"GZip Compression","description":"Compression for `url` and `qr` transports (recommended). For applications where non external dependencies are possible to achieve or wanted,  native browser support, widely available building blocks across all platforms. Has strong integrity checksum. Is GZip compression encoded in Base64 URL-safe encoding as in <a href=\"https://datatracker.ietf.org/doc/html/rfc4648#section-5\" target=\"_blank\" rel=\"noopener noreferrer\"> RFC 4648-5 spec with padding </a> . "}]}},"required":["run"],"definitions":{"__api__":{"type":"object","properties":{"allowedRetries":{"type":"number","const":-1},"customPreprocessorPermissionDetection":{"type":"boolean","const":false},"customRuntimePermissionDetection":{"type":"boolean","const":false},"permissions":{"type":"array","const":["executeScript"]},"runtime":{"type":"boolean","const":true},"preprocessor":{"type":"boolean","const":true}}}},"additionalProperties":false}}