{"version":3,"sources":["../src/codes.ts","../src/context.ts","../src/messages.ts","../src/message-formatter.ts","../src/error.ts","../src/logs.ts","../src/stack-trace.ts"],"names":["isCodamaError"],"mappings":";AA2BO,IAAM,oCAAA,GAAuC;AAC7C,IAAM,kCAAA,GAAqC;AAC3C,IAAM,yCAAA,GAA4C;AAClD,IAAM,mCAAA,GAAsC;AAC5C,IAAM,kDAAA,GAAqD;AAC3D,IAAM,8BAAA,GAAiC;AACvC,IAAM,wCAAA,GAA2C;AACjD,IAAM,yCAAA,GAA4C;AAClD,IAAM,oCAAA,GAAuC;AAC7C,IAAM,2CAAA,GAA8C;AACpD,IAAM,sDAAA,GAAyD;AAI/D,IAAM,uDAAA,GAA0D;AAChE,IAAM,+CAAA,GAAkD;AACxD,IAAM,4FAAA,GAA+F;AACrG,IAAM,qEAAA,GAAwE;AAC9E,IAAM,oEAAA,GAAuE;AAC7E,IAAM,+CAAA,GAAkD;AACxD,IAAM,8CAAA,GAAiD;AACvD,IAAM,4DAAA,GAA+D;AACrE,IAAM,+CAAA,GAAkD;AACxD,IAAM,2DAAA,GAA8D;AACpE,IAAM,yEAAA,GAA4E;AAClF,IAAM,gDAAA,GAAmD;AACzD,IAAM,6DAAA,GAAgE;AAItE,IAAM,2CAAA,GAA8C;AACpD,IAAM,0CAAA,GAA6C;AACnD,IAAM,2CAAA,GAA8C;AACpD,IAAM,uCAAA,GAA0C;AAChD,IAAM,6CAAA,GAAgD;AACtD,IAAM,mDAAA,GAAsD;AAC5D,IAAM,0CAAA,GAA6C;AACnD,IAAM,wCAAA,GAA2C;AAIjD,IAAM,mDAAA,GAAsD;AAC5D,IAAM,2CAAA,GAA8C;AACpD,IAAM,sDAAA,GAAyD;AAC/D,IAAM,6CAAA,GAAgD;AACtD,IAAM,qDAAA,GAAwD;AAC9D,IAAM,qDAAA,GAAwD;AAC9D,IAAM,uDAAA,GAA0D;AAChE,IAAM,sDAAA,GAAyD;AAC/D,IAAM,yDAAA,GAA4D;AAClE,IAAM,mEAAA,GAAsE;AAC5E,IAAM,kDAAA,GAAqD;AAC3D,IAAM,8CAAA,GAAiD;AACvD,IAAM,mDAAA,GAAsD;AAC5D,IAAM,oDAAA,GAAuD;AAC7D,IAAM,sDAAA,GAAyD;AAC/D,IAAM,uDAAA,GAA0D;AAChE,IAAM,wDAAA,GAA2D;AACjE,IAAM,sDAAA,GAAyD;AAC/D,IAAM,8CAAA,GAAiD;AACvD,IAAM,iDAAA,GAAoD;AAI1D,IAAM,yCAAA,GAA4C;AAClD,IAAM,oDAAA,GAAuD;;;ACuOpE,SAAS,YAAY,KAAA,EAAwB;AACzC,EAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,EAAG;AACtB,IAAA,MAAM,oBAAA,GAAuB,KAAA,CAAM,GAAA,CAAI,WAAW,CAAA,CAAE,IAAA;AAAA,MAAK;AAAA;AAAA,KAAmB;AAC5E,IAAA,OAAO,KAAA,GAAkB,oBAAA;AAAA,IAAiC,KAAA;AAAA,EAC9D,CAAA,MAAA,IAAW,OAAO,KAAA,KAAU,QAAA,EAAU;AAClC,IAAA,OAAO,GAAG,KAAK,CAAA,CAAA,CAAA;AAAA,EACnB,CAAA,MAAO;AACH,IAAA,OAAO,kBAAA;AAAA,MACH,MAAA;AAAA,QACI,KAAA,IAAS,IAAA,IAAQ,MAAA,CAAO,cAAA,CAAe,KAAK,CAAA,KAAM,IAAA;AAAA;AAAA;AAAA,UAG5C,EAAE,GAAI,KAAA;AAAiB,YACvB;AAAA;AACV,KACJ;AAAA,EACJ;AACJ;AAEA,SAAS,wBAAA,CAAyB,CAAC,GAAA,EAAK,KAAK,CAAA,EAAiD;AAC1F,EAAA,OAAO,CAAA,EAAG,GAAG,CAAA,CAAA,EAAI,WAAA,CAAY,KAAK,CAAC,CAAA,CAAA;AACvC;AAEO,SAAS,oBAAoB,OAAA,EAAyB;AACzD,EAAA,MAAM,kBAAA,GAAqB,OAAO,OAAA,CAAQ,OAAO,EAAE,GAAA,CAAI,wBAAwB,CAAA,CAAE,IAAA,CAAK,GAAG,CAAA;AACzF,EAAA,OAAiF,IAAA,CAAK,kBAAkB,CAAA;AAC5G;;;AC1RO,IAAM,mBAAA,GAIR;AAAA,EACD,CAAC,0CAA0C,GAAG,qDAAA;AAAA,EAC9C,CAAC,2CAA2C,GAAG,mEAAA;AAAA,EAC/C,CAAC,wCAAwC,GAAG,mDAAA;AAAA,EAC5C,CAAC,0CAA0C,GAAG,qDAAA;AAAA,EAC9C,CAAC,mDAAmD,GAAG,6CAAA;AAAA,EACvD,CAAC,6CAA6C,GAAG,uCAAA;AAAA,EACjD,CAAC,uCAAuC,GAAG,uDAAA;AAAA,EAC3C,CAAC,2CAA2C,GAAG,0CAAA;AAAA,EAC/C,CAAC,sDAAsD,GAAG,oDAAA;AAAA,EAC1D,CAAC,2CAA2C,GAAG,6CAAA;AAAA,EAC/C,CAAC,6CAA6C,GAC1C,mEAAA;AAAA,EACJ,CAAC,sDAAsD,GACnD,mEAAA;AAAA,EACJ,CAAC,8CAA8C,GAAG,yDAAA;AAAA,EAClD,CAAC,uDAAuD,GAAG,4CAAA;AAAA,EAC3D,CAAC,yDAAyD,GAAG,yCAAA;AAAA,EAC7D,CAAC,mDAAmD,GAChD,8EAAA;AAAA,EACJ,CAAC,kDAAkD,GAAG,kDAAA;AAAA,EACtD,CAAC,uDAAuD,GACpD,kEAAA;AAAA,EACJ,CAAC,wDAAwD,GACrD,sFAAA;AAAA,EACJ,CAAC,sDAAsD,GAAG,uCAAA;AAAA,EAC1D,CAAC,mDAAmD,GAChD,8EAAA;AAAA,EACJ,CAAC,qDAAqD,GAAG,mDAAA;AAAA,EACzD,CAAC,oDAAoD,GACjD,6EAAA;AAAA,EACJ,CAAC,iDAAiD,GAAG,2CAAA;AAAA,EACrD,CAAC,sDAAsD,GACnD,oEAAA;AAAA,EACJ,CAAC,2CAA2C,GAAG,2DAAA;AAAA,EAE/C,CAAC,qDAAqD,GAClD,kFAAA;AAAA,EACJ,CAAC,sDAAsD,GACnD,uEAAA;AAAA,EACJ,CAAC,8CAA8C,GAAG,oCAAA;AAAA,EAClD,CAAC,mEAAmE,GAChE,qGAAA;AAAA,EACJ,CAAC,oCAAoC,GAAG,6DAAA;AAAA,EACxC,CAAC,mCAAmC,GAAG,kDAAA;AAAA,EACvC,CAAC,kDAAkD,GAC/C,iFAAA;AAAA,EACJ,CAAC,oDAAoD,GACjD,gFAAA;AAAA,EACJ,CAAC,yCAAyC,GAAG,qDAAA;AAAA,EAC7C,CAAC,yCAAyC,GAAG,4DAAA;AAAA,EAC7C,CAAC,kCAAkC,GAAG,sDAAA;AAAA,EACtC,CAAC,yCAAyC,GAAG,0CAAA;AAAA,EAC7C,CAAC,oCAAoC,GAAG,iCAAA;AAAA,EACxC,CAAC,wCAAwC,GAAG,uCAAA;AAAA,EAC5C,CAAC,8BAA8B,GAC3B,oHAAA;AAAA,EACJ,CAAC,+CAA+C,GAAG,8DAAA;AAAA,EACnD,CAAC,uDAAuD,GACpD,gHAAA;AAAA,EACJ,CAAC,4DAA4D,GACzD,+FAAA;AAAA,EACJ,CAAC,yEAAyE,GACtE,6GAAA;AAAA,EACJ,CAAC,6DAA6D,GAAG,gDAAA;AAAA,EACjE,CAAC,qEAAqE,GAClE,2JAAA;AAAA,EACJ,CAAC,4FAA4F,GACzF,qLAAA;AAAA,EACJ,CAAC,+CAA+C,GAAG,0DAAA;AAAA,EACnD,CAAC,2DAA2D,GACxD,2FAAA;AAAA,EACJ,CAAC,oEAAoE,GACjE,gKAAA;AAAA,EACJ,CAAC,8CAA8C,GAAG,yCAAA;AAAA,EAClD,CAAC,+CAA+C,GAC5C,2EAAA;AAAA,EACJ,CAAC,gDAAgD,GAAG;AACxD,CAAA;;;AC5IO,SAAS,4BAAA,CACZ,IAAA,EACA,OAAA,GAAkB,EAAC,EACb;AACN,EAAA,MAAM,mBAAA,GAAsB,oBAAoB,IAAI,CAAA;AACpD,EAAA,MAAM,UAAU,mBAAA,CAAoB,OAAA;AAAA,IAAQ,iBAAA;AAAA,IAAmB,CAAC,WAAW,YAAA,KACvE,YAAA,IAAgB,UAAU,CAAA,EAAG,OAAA,CAAQ,YAAoC,CAAW,CAAA,CAAA,GAAK;AAAA,GAC7F;AACA,EAAA,OAAO,OAAA;AACX;AAEO,SAAS,eAAA,CAAoD,IAAA,EAAkB,OAAA,GAAkB,EAAC,EAAW;AAChH,EAAA,IAAI,yBAAyB,YAAA,EAAc;AACvC,IAAA,OAAO,4BAAA,CAA6B,MAAM,OAAO,CAAA;AAAA,EACrD,CAAA,MAAO;AACH,IAAA,IAAI,qBAAA,GAAwB,CAAA,cAAA,EAAiB,IAAI,CAAA,8DAAA,EAAiE,IAAI,CAAA,CAAA;AACtH,IAAA,IAAI,MAAA,CAAO,IAAA,CAAK,OAAO,CAAA,CAAE,MAAA,EAAQ;AAM7B,MAAA,qBAAA,IAAyB,CAAA,EAAA,EAAK,mBAAA,CAAoB,OAAO,CAAC,CAAA,CAAA,CAAA;AAAA,IAC9D;AACA,IAAA,OAAO,GAAG,qBAAqB,CAAA,EAAA,CAAA;AAAA,EACnC;AACJ;;;AC1BO,SAAS,aAAA,CACZ,GACA,IAAA,EAC4B;AAC5B,EAAA,MAAMA,cAAAA,GAAgB,CAAA,YAAa,KAAA,IAAS,CAAA,CAAE,IAAA,KAAS,aAAA;AACvD,EAAA,IAAIA,cAAAA,EAAe;AACf,IAAA,IAAI,SAAS,MAAA,EAAW;AACpB,MAAA,OAAQ,CAAA,CAA8B,QAAQ,MAAA,KAAW,IAAA;AAAA,IAC7D;AACA,IAAA,OAAO,IAAA;AAAA,EACX;AACA,EAAA,OAAO,KAAA;AACX;AAQO,IAAM,WAAA,GAAN,cAAgF,KAAA,CAAM;AAAA,EAChF,OAAA;AAAA,EACT,WAAA,CAAA,GACO,CAAC,IAAA,EAAM,sBAAsB,CAAA,EAGlC;AACE,IAAA,IAAI,OAAA;AACJ,IAAA,IAAI,YAAA;AACJ,IAAA,IAAI,sBAAA,EAAwB;AAExB,MAAA,MAAM,EAAE,KAAA,EAAO,GAAG,WAAA,EAAY,GAAI,sBAAA;AAClC,MAAA,IAAI,KAAA,EAAO;AACP,QAAA,YAAA,GAAe,EAAE,KAAA,EAAM;AAAA,MAC3B;AACA,MAAA,IAAI,MAAA,CAAO,IAAA,CAAK,WAAW,CAAA,CAAE,SAAS,CAAA,EAAG;AACrC,QAAA,OAAA,GAAU,WAAA;AAAA,MACd;AAAA,IACJ;AACA,IAAA,MAAM,OAAA,GAAU,eAAA,CAAgB,IAAA,EAAM,OAAO,CAAA;AAC7C,IAAA,KAAA,CAAM,SAAS,YAAY,CAAA;AAC3B,IAAA,IAAA,CAAK,OAAA,GAAU;AAAA,MACX,MAAA,EAAQ,IAAA;AAAA,MACR,GAAG;AAAA,KACP;AAGA,IAAA,IAAA,CAAK,IAAA,GAAO,aAAA;AAAA,EAChB;AACJ;;;AC1DO,SAAS,SAAS,OAAA,EAAiB;AACtC,EAAA,OAAA,CAAQ,MAAM,OAAO,CAAA;AACzB;AAEO,SAAS,QAAQ,OAAA,EAAiB;AACrC,EAAA,OAAA,CAAQ,KAAK,OAAO,CAAA;AACxB;AAEO,SAAS,QAAQ,OAAA,EAAiB;AACrC,EAAA,OAAA,CAAQ,IAAI,OAAO,CAAA;AACvB;;;ACLO,SAAS,yBAAyB,IAAA,EAAwD;AAC7F,EAAA,IAAI,mBAAA,IAAuB,KAAA,IAAS,OAAO,KAAA,CAAM,sBAAsB,UAAA,EAAY;AAC/E,IAAA,KAAA,CAAM,iBAAA,CAAkB,GAAG,IAAI,CAAA;AAAA,EACnC;AACJ","file":"index.browser.mjs","sourcesContent":["/**\n * Heavily inspired by @solana/errors.\n * @see https://github.com/anza-xyz/kit/blob/main/packages/errors\n *\n * ---\n *\n * WARNING:\n *   - Don't remove error codes\n *   - Don't change or reorder error codes.\n *\n * Good naming conventions:\n *   - Prefixing common errors — e.g. under the same package — can be a good way to namespace them.\n *   - Use consistent names — e.g. choose `PDA` or `PROGRAM_DERIVED_ADDRESS` and stick with it. Ensure your names are consistent with existing error codes. The decision might have been made for you.\n *   - Recommended prefixes and suffixes:\n *     - `MALFORMED_`: Some input was not constructed properly. E.g. `MALFORMED_BASE58_ENCODED_ADDRESS`.\n *     - `INVALID_`: Some input is invalid (other than because it was MALFORMED). E.g. `INVALID_NUMBER_OF_BYTES`.\n *     - `EXPECTED_`: Some input was different than expected, no need to specify the \"GOT\" part unless necessary. E.g. `EXPECTED_DECODED_ACCOUNT`.\n *     - `_CANNOT_`: Some operation cannot be performed or some input cannot be used due to some condition. E.g. `CANNOT_DECODE_EMPTY_BYTE_ARRAY` or `PDA_CANNOT_END_WITH_PDA_MARKER`.\n *     - `_MUST_BE_`: Some condition must be true. E.g. `NONCE_TRANSACTION_FIRST_INSTRUCTION_MUST_BE_ADVANCE_NONCE`.\n *     - `_FAILED_TO_`: Tried to perform some operation and failed. E.g. `FAILED_TO_DECODE_ACCOUNT`.\n *     - `_NOT_FOUND`: Some operation lead to not finding something. E.g. `ACCOUNT_NOT_FOUND`.\n *     - `_OUT_OF_RANGE`: Some value is out of range. E.g. `ENUM_DISCRIMINATOR_OUT_OF_RANGE`.\n *     - `_EXCEEDED`: Some limit was exceeded. E.g. `PDA_MAX_SEED_LENGTH_EXCEEDED`.\n *     - `_MISMATCH`: Some elements do not match. E.g. `ENCODER_DECODER_FIXED_SIZE_MISMATCH`.\n *     - `_MISSING`: Some required input is missing. E.g. `TRANSACTION_FEE_PAYER_MISSING`.\n *     - `_UNIMPLEMENTED`: Some required component is not available in the environment. E.g. `SUBTLE_CRYPTO_VERIFY_FUNCTION_UNIMPLEMENTED`.\n */\nexport const CODAMA_ERROR__UNRECOGNIZED_NODE_KIND = 1;\nexport const CODAMA_ERROR__UNEXPECTED_NODE_KIND = 2;\nexport const CODAMA_ERROR__UNEXPECTED_NESTED_NODE_KIND = 3;\nexport const CODAMA_ERROR__LINKED_NODE_NOT_FOUND = 4;\nexport const CODAMA_ERROR__NODE_FILESYSTEM_FUNCTION_UNAVAILABLE = 5;\nexport const CODAMA_ERROR__VERSION_MISMATCH = 6;\nexport const CODAMA_ERROR__UNRECOGNIZED_NUMBER_FORMAT = 7;\nexport const CODAMA_ERROR__UNRECOGNIZED_BYTES_ENCODING = 8;\nexport const CODAMA_ERROR__ENUM_VARIANT_NOT_FOUND = 9;\nexport const CODAMA_ERROR__DISCRIMINATOR_FIELD_NOT_FOUND = 10;\nexport const CODAMA_ERROR__DISCRIMINATOR_FIELD_HAS_NO_DEFAULT_VALUE = 11;\n\n// Visitors-related errors.\n// Reserve error codes in the range [1200000-1200999].\nexport const CODAMA_ERROR__VISITORS__CANNOT_ADD_DUPLICATED_PDA_NAMES = 1200000;\nexport const CODAMA_ERROR__VISITORS__INVALID_PDA_SEED_VALUES = 1200001;\nexport const CODAMA_ERROR__VISITORS__CYCLIC_DEPENDENCY_DETECTED_WHEN_RESOLVING_INSTRUCTION_DEFAULT_VALUES = 1200002;\nexport const CODAMA_ERROR__VISITORS__CANNOT_USE_OPTIONAL_ACCOUNT_AS_PDA_SEED_VALUE = 1200003;\nexport const CODAMA_ERROR__VISITORS__INVALID_INSTRUCTION_DEFAULT_VALUE_DEPENDENCY = 1200004;\nexport const CODAMA_ERROR__VISITORS__ACCOUNT_FIELD_NOT_FOUND = 1200005;\nexport const CODAMA_ERROR__VISITORS__INVALID_NUMBER_WRAPPER = 1200006;\nexport const CODAMA_ERROR__VISITORS__CANNOT_EXTEND_MISSING_VISIT_FUNCTION = 1200007;\nexport const CODAMA_ERROR__VISITORS__FAILED_TO_VALIDATE_NODE = 1200008;\nexport const CODAMA_ERROR__VISITORS__INSTRUCTION_ENUM_ARGUMENT_NOT_FOUND = 1200009;\nexport const CODAMA_ERROR__VISITORS__CANNOT_FLATTEN_STRUCT_WITH_CONFLICTING_ATTRIBUTES = 1200010;\nexport const CODAMA_ERROR__VISITORS__RENDER_MAP_KEY_NOT_FOUND = 1200011;\nexport const CODAMA_ERROR__VISITORS__CANNOT_REMOVE_LAST_PATH_IN_NODE_STACK = 1200012;\n\n// Anchor-related errors.\n// Reserve error codes in the range [2100000-2100999].\nexport const CODAMA_ERROR__ANCHOR__UNRECOGNIZED_IDL_TYPE = 2100000;\nexport const CODAMA_ERROR__ANCHOR__ACCOUNT_TYPE_MISSING = 2100001;\nexport const CODAMA_ERROR__ANCHOR__ARGUMENT_TYPE_MISSING = 2100002;\nexport const CODAMA_ERROR__ANCHOR__TYPE_PATH_MISSING = 2100003;\nexport const CODAMA_ERROR__ANCHOR__SEED_KIND_UNIMPLEMENTED = 2100004;\nexport const CODAMA_ERROR__ANCHOR__PROGRAM_ID_KIND_UNIMPLEMENTED = 2100005;\nexport const CODAMA_ERROR__ANCHOR__GENERIC_TYPE_MISSING = 2100006;\nexport const CODAMA_ERROR__ANCHOR__EVENT_TYPE_MISSING = 2100007;\n\n// Dynamic-client-related errors.\n// Reserve error codes in the range [2500000-2500999].\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__INSTRUCTION_NOT_FOUND = 2500000;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__PDA_NOT_FOUND = 2500001;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__NODE_REFERENCE_NOT_FOUND = 2500002;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_MISSING = 2500003;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ACCOUNT_ADDRESS = 2500004;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ADDRESS_TYPE = 2500005;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__CANNOT_CONVERT_TO_ADDRESS = 2500006;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_RESOLVER_MISSING = 2500007;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__CIRCULAR_ACCOUNT_DEPENDENCY = 2500008;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_OPTIONAL_ACCOUNT_STRATEGY = 2500009;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_DERIVE_PDA = 2500010;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__ARGUMENT_MISSING = 2500011;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__DEFAULT_VALUE_MISSING = 2500012;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ARGUMENT_INPUT = 2500013;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ARGUMENT_TYPE = 2500014;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_ENCODE_ARGUMENT = 2500015;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_EXECUTE_RESOLVER = 2500016;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_VALIDATE_INPUT = 2500017;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_NODE = 2500018;\nexport const CODAMA_ERROR__DYNAMIC_CLIENT__INVARIANT_VIOLATION = 2500019;\n\n// Renderers-related errors.\n// Reserve error codes in the range [2800000-2800999].\nexport const CODAMA_ERROR__RENDERERS__UNSUPPORTED_NODE = 2800000;\nexport const CODAMA_ERROR__RENDERERS__MISSING_DEPENDENCY_VERSIONS = 2800001;\n\n/**\n * A union of every Codama error code\n *\n * You might be wondering why this is not a TypeScript enum or const enum.\n *\n * One of the goals of this library is to enable people to use some or none of it without having to\n * bundle all of it.\n *\n * If we made the set of error codes an enum then anyone who imported it (even if to only use a\n * single error code) would be forced to bundle every code and its label.\n *\n * Const enums appear to solve this problem by letting the compiler inline only the codes that are\n * actually used. Unfortunately exporting ambient (const) enums from a library like `@codama/errors`\n * is not safe, for a variety of reasons covered here: https://stackoverflow.com/a/28818850\n */\nexport type CodamaErrorCode =\n    | typeof CODAMA_ERROR__ANCHOR__ACCOUNT_TYPE_MISSING\n    | typeof CODAMA_ERROR__ANCHOR__ARGUMENT_TYPE_MISSING\n    | typeof CODAMA_ERROR__ANCHOR__EVENT_TYPE_MISSING\n    | typeof CODAMA_ERROR__ANCHOR__GENERIC_TYPE_MISSING\n    | typeof CODAMA_ERROR__ANCHOR__PROGRAM_ID_KIND_UNIMPLEMENTED\n    | typeof CODAMA_ERROR__ANCHOR__SEED_KIND_UNIMPLEMENTED\n    | typeof CODAMA_ERROR__ANCHOR__TYPE_PATH_MISSING\n    | typeof CODAMA_ERROR__ANCHOR__UNRECOGNIZED_IDL_TYPE\n    | typeof CODAMA_ERROR__DISCRIMINATOR_FIELD_HAS_NO_DEFAULT_VALUE\n    | typeof CODAMA_ERROR__DISCRIMINATOR_FIELD_NOT_FOUND\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_MISSING\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_RESOLVER_MISSING\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__ARGUMENT_MISSING\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__CANNOT_CONVERT_TO_ADDRESS\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__CIRCULAR_ACCOUNT_DEPENDENCY\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__DEFAULT_VALUE_MISSING\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_DERIVE_PDA\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_ENCODE_ARGUMENT\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_EXECUTE_RESOLVER\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_VALIDATE_INPUT\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__INSTRUCTION_NOT_FOUND\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ACCOUNT_ADDRESS\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ARGUMENT_INPUT\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__INVARIANT_VIOLATION\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__NODE_REFERENCE_NOT_FOUND\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__PDA_NOT_FOUND\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ADDRESS_TYPE\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ARGUMENT_TYPE\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_NODE\n    | typeof CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_OPTIONAL_ACCOUNT_STRATEGY\n    | typeof CODAMA_ERROR__ENUM_VARIANT_NOT_FOUND\n    | typeof CODAMA_ERROR__LINKED_NODE_NOT_FOUND\n    | typeof CODAMA_ERROR__NODE_FILESYSTEM_FUNCTION_UNAVAILABLE\n    | typeof CODAMA_ERROR__RENDERERS__MISSING_DEPENDENCY_VERSIONS\n    | typeof CODAMA_ERROR__RENDERERS__UNSUPPORTED_NODE\n    | typeof CODAMA_ERROR__UNEXPECTED_NESTED_NODE_KIND\n    | typeof CODAMA_ERROR__UNEXPECTED_NODE_KIND\n    | typeof CODAMA_ERROR__UNRECOGNIZED_BYTES_ENCODING\n    | typeof CODAMA_ERROR__UNRECOGNIZED_NODE_KIND\n    | typeof CODAMA_ERROR__UNRECOGNIZED_NUMBER_FORMAT\n    | typeof CODAMA_ERROR__VERSION_MISMATCH\n    | typeof CODAMA_ERROR__VISITORS__ACCOUNT_FIELD_NOT_FOUND\n    | typeof CODAMA_ERROR__VISITORS__CANNOT_ADD_DUPLICATED_PDA_NAMES\n    | typeof CODAMA_ERROR__VISITORS__CANNOT_EXTEND_MISSING_VISIT_FUNCTION\n    | typeof CODAMA_ERROR__VISITORS__CANNOT_FLATTEN_STRUCT_WITH_CONFLICTING_ATTRIBUTES\n    | typeof CODAMA_ERROR__VISITORS__CANNOT_REMOVE_LAST_PATH_IN_NODE_STACK\n    | typeof CODAMA_ERROR__VISITORS__CANNOT_USE_OPTIONAL_ACCOUNT_AS_PDA_SEED_VALUE\n    | typeof CODAMA_ERROR__VISITORS__CYCLIC_DEPENDENCY_DETECTED_WHEN_RESOLVING_INSTRUCTION_DEFAULT_VALUES\n    | typeof CODAMA_ERROR__VISITORS__FAILED_TO_VALIDATE_NODE\n    | typeof CODAMA_ERROR__VISITORS__INSTRUCTION_ENUM_ARGUMENT_NOT_FOUND\n    | typeof CODAMA_ERROR__VISITORS__INVALID_INSTRUCTION_DEFAULT_VALUE_DEPENDENCY\n    | typeof CODAMA_ERROR__VISITORS__INVALID_NUMBER_WRAPPER\n    | typeof CODAMA_ERROR__VISITORS__INVALID_PDA_SEED_VALUES\n    | typeof CODAMA_ERROR__VISITORS__RENDER_MAP_KEY_NOT_FOUND;\n","/**\n * Heavily inspired by @solana/errors.\n * @see https://github.com/anza-xyz/kit/blob/main/packages/errors\n */\n\nimport {\n    AccountNode,\n    AccountValueNode,\n    CamelCaseString,\n    EnumTypeNode,\n    InstructionAccountNode,\n    InstructionArgumentNode,\n    InstructionNode,\n    LinkNode,\n    Node,\n    NodeKind,\n    PdaNode,\n    PdaSeedValueNode,\n    ProgramNode,\n} from '@codama/node-types';\n\nimport {\n    CODAMA_ERROR__ANCHOR__ACCOUNT_TYPE_MISSING,\n    CODAMA_ERROR__ANCHOR__ARGUMENT_TYPE_MISSING,\n    CODAMA_ERROR__ANCHOR__EVENT_TYPE_MISSING,\n    CODAMA_ERROR__ANCHOR__GENERIC_TYPE_MISSING,\n    CODAMA_ERROR__ANCHOR__PROGRAM_ID_KIND_UNIMPLEMENTED,\n    CODAMA_ERROR__ANCHOR__SEED_KIND_UNIMPLEMENTED,\n    CODAMA_ERROR__ANCHOR__TYPE_PATH_MISSING,\n    CODAMA_ERROR__ANCHOR__UNRECOGNIZED_IDL_TYPE,\n    CODAMA_ERROR__DISCRIMINATOR_FIELD_HAS_NO_DEFAULT_VALUE,\n    CODAMA_ERROR__DISCRIMINATOR_FIELD_NOT_FOUND,\n    CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_MISSING,\n    CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_RESOLVER_MISSING,\n    CODAMA_ERROR__DYNAMIC_CLIENT__ARGUMENT_MISSING,\n    CODAMA_ERROR__DYNAMIC_CLIENT__CANNOT_CONVERT_TO_ADDRESS,\n    CODAMA_ERROR__DYNAMIC_CLIENT__CIRCULAR_ACCOUNT_DEPENDENCY,\n    CODAMA_ERROR__DYNAMIC_CLIENT__DEFAULT_VALUE_MISSING,\n    CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_DERIVE_PDA,\n    CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_ENCODE_ARGUMENT,\n    CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_EXECUTE_RESOLVER,\n    CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_VALIDATE_INPUT,\n    CODAMA_ERROR__DYNAMIC_CLIENT__INSTRUCTION_NOT_FOUND,\n    CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ACCOUNT_ADDRESS,\n    CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ARGUMENT_INPUT,\n    CODAMA_ERROR__DYNAMIC_CLIENT__INVARIANT_VIOLATION,\n    CODAMA_ERROR__DYNAMIC_CLIENT__NODE_REFERENCE_NOT_FOUND,\n    CODAMA_ERROR__DYNAMIC_CLIENT__PDA_NOT_FOUND,\n    CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ADDRESS_TYPE,\n    CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ARGUMENT_TYPE,\n    CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_NODE,\n    CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_OPTIONAL_ACCOUNT_STRATEGY,\n    CODAMA_ERROR__ENUM_VARIANT_NOT_FOUND,\n    CODAMA_ERROR__LINKED_NODE_NOT_FOUND,\n    CODAMA_ERROR__NODE_FILESYSTEM_FUNCTION_UNAVAILABLE,\n    CODAMA_ERROR__RENDERERS__MISSING_DEPENDENCY_VERSIONS,\n    CODAMA_ERROR__RENDERERS__UNSUPPORTED_NODE,\n    CODAMA_ERROR__UNEXPECTED_NESTED_NODE_KIND,\n    CODAMA_ERROR__UNEXPECTED_NODE_KIND,\n    CODAMA_ERROR__UNRECOGNIZED_BYTES_ENCODING,\n    CODAMA_ERROR__UNRECOGNIZED_NODE_KIND,\n    CODAMA_ERROR__UNRECOGNIZED_NUMBER_FORMAT,\n    CODAMA_ERROR__VERSION_MISMATCH,\n    CODAMA_ERROR__VISITORS__ACCOUNT_FIELD_NOT_FOUND,\n    CODAMA_ERROR__VISITORS__CANNOT_ADD_DUPLICATED_PDA_NAMES,\n    CODAMA_ERROR__VISITORS__CANNOT_EXTEND_MISSING_VISIT_FUNCTION,\n    CODAMA_ERROR__VISITORS__CANNOT_FLATTEN_STRUCT_WITH_CONFLICTING_ATTRIBUTES,\n    CODAMA_ERROR__VISITORS__CANNOT_REMOVE_LAST_PATH_IN_NODE_STACK,\n    CODAMA_ERROR__VISITORS__CANNOT_USE_OPTIONAL_ACCOUNT_AS_PDA_SEED_VALUE,\n    CODAMA_ERROR__VISITORS__CYCLIC_DEPENDENCY_DETECTED_WHEN_RESOLVING_INSTRUCTION_DEFAULT_VALUES,\n    CODAMA_ERROR__VISITORS__FAILED_TO_VALIDATE_NODE,\n    CODAMA_ERROR__VISITORS__INSTRUCTION_ENUM_ARGUMENT_NOT_FOUND,\n    CODAMA_ERROR__VISITORS__INVALID_INSTRUCTION_DEFAULT_VALUE_DEPENDENCY,\n    CODAMA_ERROR__VISITORS__INVALID_NUMBER_WRAPPER,\n    CODAMA_ERROR__VISITORS__INVALID_PDA_SEED_VALUES,\n    CODAMA_ERROR__VISITORS__RENDER_MAP_KEY_NOT_FOUND,\n    CodamaErrorCode,\n} from './codes';\n\ntype DefaultUnspecifiedErrorContextToUndefined<T> = {\n    [P in CodamaErrorCode]: P extends keyof T ? T[P] : undefined;\n};\n\n/**\n * WARNING:\n *   - Don't change or remove members of an error's context.\n */\nexport type CodamaErrorContext = DefaultUnspecifiedErrorContextToUndefined<{\n    [CODAMA_ERROR__ANCHOR__ACCOUNT_TYPE_MISSING]: {\n        name: string;\n    };\n    [CODAMA_ERROR__ANCHOR__ARGUMENT_TYPE_MISSING]: {\n        name: string;\n    };\n    [CODAMA_ERROR__ANCHOR__EVENT_TYPE_MISSING]: {\n        name: string;\n    };\n    [CODAMA_ERROR__ANCHOR__GENERIC_TYPE_MISSING]: {\n        name: string;\n    };\n    [CODAMA_ERROR__ANCHOR__PROGRAM_ID_KIND_UNIMPLEMENTED]: {\n        kind: string;\n    };\n    [CODAMA_ERROR__ANCHOR__SEED_KIND_UNIMPLEMENTED]: {\n        kind: string;\n    };\n    [CODAMA_ERROR__ANCHOR__TYPE_PATH_MISSING]: {\n        idlType: string;\n        path: string;\n    };\n    [CODAMA_ERROR__ANCHOR__UNRECOGNIZED_IDL_TYPE]: {\n        idlType: string;\n    };\n    [CODAMA_ERROR__DISCRIMINATOR_FIELD_HAS_NO_DEFAULT_VALUE]: {\n        field: CamelCaseString;\n    };\n    [CODAMA_ERROR__DISCRIMINATOR_FIELD_NOT_FOUND]: {\n        field: CamelCaseString;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_MISSING]: {\n        accountName: CamelCaseString;\n        instructionName: CamelCaseString;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_RESOLVER_MISSING]: {\n        accountName: CamelCaseString;\n        resolverName: CamelCaseString;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__ARGUMENT_MISSING]: {\n        argumentName: CamelCaseString;\n        instructionName: CamelCaseString;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__CANNOT_CONVERT_TO_ADDRESS]: {\n        value: string;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__CIRCULAR_ACCOUNT_DEPENDENCY]: {\n        chain: string;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__DEFAULT_VALUE_MISSING]: {\n        argumentName: CamelCaseString;\n        instructionName: CamelCaseString;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_DERIVE_PDA]: {\n        accountName: CamelCaseString;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_ENCODE_ARGUMENT]: {\n        argumentName: CamelCaseString;\n        instructionName: CamelCaseString;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_EXECUTE_RESOLVER]: {\n        resolverName: CamelCaseString;\n        targetKind: NodeKind;\n        targetName: CamelCaseString;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_VALIDATE_INPUT]: {\n        message: string;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__INSTRUCTION_NOT_FOUND]: {\n        availableIxs: string[];\n        instructionName: string;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ACCOUNT_ADDRESS]: {\n        accountName: CamelCaseString;\n        value: string;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ARGUMENT_INPUT]: {\n        argumentName: CamelCaseString;\n        expectedType: string;\n        value: string;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__INVARIANT_VIOLATION]: {\n        message: string;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__NODE_REFERENCE_NOT_FOUND]: {\n        instructionName: CamelCaseString;\n        referencedName: CamelCaseString;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__PDA_NOT_FOUND]: {\n        available: string;\n        pdaName: string;\n    };\n\n    [CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ADDRESS_TYPE]: {\n        accountName: string;\n        actualType: string;\n        expectedType: string;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ARGUMENT_TYPE]: {\n        actualType: string;\n        expectedType: string;\n        nodeKind: NodeKind;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_NODE]: {\n        nodeKind: NodeKind;\n    };\n    [CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_OPTIONAL_ACCOUNT_STRATEGY]: {\n        accountName: CamelCaseString;\n        instructionName: CamelCaseString;\n        strategy: string;\n    };\n    [CODAMA_ERROR__ENUM_VARIANT_NOT_FOUND]: {\n        enum: EnumTypeNode;\n        enumName: CamelCaseString;\n        variant: CamelCaseString;\n    };\n    [CODAMA_ERROR__LINKED_NODE_NOT_FOUND]: {\n        kind: LinkNode['kind'];\n        linkNode: LinkNode;\n        name: CamelCaseString;\n        path: readonly Node[];\n    };\n    [CODAMA_ERROR__NODE_FILESYSTEM_FUNCTION_UNAVAILABLE]: {\n        fsFunction: string;\n    };\n    [CODAMA_ERROR__RENDERERS__MISSING_DEPENDENCY_VERSIONS]: {\n        dependencies: readonly string[];\n        message: string;\n    };\n    [CODAMA_ERROR__RENDERERS__UNSUPPORTED_NODE]: {\n        kind: NodeKind;\n        node: Node | undefined;\n    };\n    [CODAMA_ERROR__UNEXPECTED_NESTED_NODE_KIND]: {\n        expectedKinds: NodeKind[];\n        kind: NodeKind | null;\n        node: Node | null | undefined;\n    };\n    [CODAMA_ERROR__UNEXPECTED_NODE_KIND]: {\n        expectedKinds: NodeKind[];\n        kind: NodeKind | null;\n        node: Node | null | undefined;\n    };\n    [CODAMA_ERROR__UNRECOGNIZED_BYTES_ENCODING]: {\n        encoding: string;\n    };\n    [CODAMA_ERROR__UNRECOGNIZED_NODE_KIND]: {\n        kind: string;\n    };\n    [CODAMA_ERROR__UNRECOGNIZED_NUMBER_FORMAT]: {\n        format: string;\n    };\n    [CODAMA_ERROR__VERSION_MISMATCH]: {\n        codamaVersion: string;\n        rootVersion: string;\n    };\n    [CODAMA_ERROR__VISITORS__ACCOUNT_FIELD_NOT_FOUND]: {\n        account: AccountNode;\n        missingField: CamelCaseString;\n        name: CamelCaseString;\n    };\n    [CODAMA_ERROR__VISITORS__CANNOT_ADD_DUPLICATED_PDA_NAMES]: {\n        duplicatedPdaNames: CamelCaseString[];\n        program: ProgramNode;\n        programName: CamelCaseString;\n    };\n    [CODAMA_ERROR__VISITORS__CANNOT_EXTEND_MISSING_VISIT_FUNCTION]: {\n        visitFunction: string;\n    };\n    [CODAMA_ERROR__VISITORS__CANNOT_FLATTEN_STRUCT_WITH_CONFLICTING_ATTRIBUTES]: {\n        conflictingAttributes: CamelCaseString[];\n    };\n    [CODAMA_ERROR__VISITORS__CANNOT_REMOVE_LAST_PATH_IN_NODE_STACK]: {\n        path: readonly Node[];\n    };\n    [CODAMA_ERROR__VISITORS__CANNOT_USE_OPTIONAL_ACCOUNT_AS_PDA_SEED_VALUE]: {\n        instruction: InstructionNode;\n        instructionAccount: InstructionAccountNode;\n        instructionAccountName: CamelCaseString;\n        instructionName: CamelCaseString;\n        seed: PdaSeedValueNode<AccountValueNode>;\n        seedName: CamelCaseString;\n        seedValueName: CamelCaseString;\n    };\n    [CODAMA_ERROR__VISITORS__CYCLIC_DEPENDENCY_DETECTED_WHEN_RESOLVING_INSTRUCTION_DEFAULT_VALUES]: {\n        cycle: (InstructionAccountNode | InstructionArgumentNode)[];\n        formattedCycle: string;\n        instruction: InstructionNode;\n        instructionName: CamelCaseString;\n    };\n    [CODAMA_ERROR__VISITORS__FAILED_TO_VALIDATE_NODE]: {\n        formattedHistogram: string;\n        validationItems: ValidationItem[];\n    };\n    [CODAMA_ERROR__VISITORS__INSTRUCTION_ENUM_ARGUMENT_NOT_FOUND]: {\n        argumentName: CamelCaseString;\n        instruction: InstructionNode;\n        instructionName: CamelCaseString;\n    };\n    [CODAMA_ERROR__VISITORS__INVALID_INSTRUCTION_DEFAULT_VALUE_DEPENDENCY]: {\n        dependency: InstructionAccountNode | InstructionArgumentNode;\n        dependencyKind: 'instructionAccountNode' | 'instructionArgumentNode';\n        dependencyName: CamelCaseString;\n        instruction: InstructionNode;\n        instructionName: CamelCaseString;\n        parent: InstructionAccountNode | InstructionArgumentNode;\n        parentKind: 'instructionAccountNode' | 'instructionArgumentNode';\n        parentName: CamelCaseString;\n    };\n    [CODAMA_ERROR__VISITORS__INVALID_NUMBER_WRAPPER]: {\n        wrapper: string;\n    };\n    [CODAMA_ERROR__VISITORS__INVALID_PDA_SEED_VALUES]: {\n        instruction: InstructionNode;\n        instructionName: CamelCaseString;\n        pda: PdaNode;\n        pdaName: CamelCaseString;\n    };\n    [CODAMA_ERROR__VISITORS__RENDER_MAP_KEY_NOT_FOUND]: {\n        key: string;\n    };\n}>;\n\ntype ValidationItem = {\n    level: 'debug' | 'error' | 'info' | 'trace' | 'warn';\n    message: string;\n    node: Node;\n    path: Node[];\n};\n\nexport function decodeEncodedContext(encodedContext: string): object {\n    const decodedUrlString = __NODEJS__ ? Buffer.from(encodedContext, 'base64').toString('utf8') : atob(encodedContext);\n    return Object.fromEntries(new URLSearchParams(decodedUrlString).entries());\n}\n\nfunction encodeValue(value: unknown): string {\n    if (Array.isArray(value)) {\n        const commaSeparatedValues = value.map(encodeValue).join('%2C%20' /* \", \" */);\n        return '%5B' /* \"[\" */ + commaSeparatedValues + /* \"]\" */ '%5D';\n    } else if (typeof value === 'bigint') {\n        return `${value}n`;\n    } else {\n        return encodeURIComponent(\n            String(\n                value != null && Object.getPrototypeOf(value) === null\n                    ? // Plain objects with no protoype don't have a `toString` method.\n                      // Convert them before stringifying them.\n                      { ...(value as object) }\n                    : value,\n            ),\n        );\n    }\n}\n\nfunction encodeObjectContextEntry([key, value]: [string, unknown]): `${typeof key}=${string}` {\n    return `${key}=${encodeValue(value)}`;\n}\n\nexport function encodeContextObject(context: object): string {\n    const searchParamsString = Object.entries(context).map(encodeObjectContextEntry).join('&');\n    return __NODEJS__ ? Buffer.from(searchParamsString, 'utf8').toString('base64') : btoa(searchParamsString);\n}\n","/**\n * Heavily inspired by @solana/errors.\n * @see https://github.com/anza-xyz/kit/blob/main/packages/errors\n */\n\nimport {\n    CODAMA_ERROR__ANCHOR__ACCOUNT_TYPE_MISSING,\n    CODAMA_ERROR__ANCHOR__ARGUMENT_TYPE_MISSING,\n    CODAMA_ERROR__ANCHOR__EVENT_TYPE_MISSING,\n    CODAMA_ERROR__ANCHOR__GENERIC_TYPE_MISSING,\n    CODAMA_ERROR__ANCHOR__PROGRAM_ID_KIND_UNIMPLEMENTED,\n    CODAMA_ERROR__ANCHOR__SEED_KIND_UNIMPLEMENTED,\n    CODAMA_ERROR__ANCHOR__TYPE_PATH_MISSING,\n    CODAMA_ERROR__ANCHOR__UNRECOGNIZED_IDL_TYPE,\n    CODAMA_ERROR__DISCRIMINATOR_FIELD_HAS_NO_DEFAULT_VALUE,\n    CODAMA_ERROR__DISCRIMINATOR_FIELD_NOT_FOUND,\n    CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_MISSING,\n    CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_RESOLVER_MISSING,\n    CODAMA_ERROR__DYNAMIC_CLIENT__ARGUMENT_MISSING,\n    CODAMA_ERROR__DYNAMIC_CLIENT__CANNOT_CONVERT_TO_ADDRESS,\n    CODAMA_ERROR__DYNAMIC_CLIENT__CIRCULAR_ACCOUNT_DEPENDENCY,\n    CODAMA_ERROR__DYNAMIC_CLIENT__DEFAULT_VALUE_MISSING,\n    CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_DERIVE_PDA,\n    CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_ENCODE_ARGUMENT,\n    CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_EXECUTE_RESOLVER,\n    CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_VALIDATE_INPUT,\n    CODAMA_ERROR__DYNAMIC_CLIENT__INSTRUCTION_NOT_FOUND,\n    CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ACCOUNT_ADDRESS,\n    CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ARGUMENT_INPUT,\n    CODAMA_ERROR__DYNAMIC_CLIENT__INVARIANT_VIOLATION,\n    CODAMA_ERROR__DYNAMIC_CLIENT__NODE_REFERENCE_NOT_FOUND,\n    CODAMA_ERROR__DYNAMIC_CLIENT__PDA_NOT_FOUND,\n    CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ADDRESS_TYPE,\n    CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ARGUMENT_TYPE,\n    CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_NODE,\n    CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_OPTIONAL_ACCOUNT_STRATEGY,\n    CODAMA_ERROR__ENUM_VARIANT_NOT_FOUND,\n    CODAMA_ERROR__LINKED_NODE_NOT_FOUND,\n    CODAMA_ERROR__NODE_FILESYSTEM_FUNCTION_UNAVAILABLE,\n    CODAMA_ERROR__RENDERERS__MISSING_DEPENDENCY_VERSIONS,\n    CODAMA_ERROR__RENDERERS__UNSUPPORTED_NODE,\n    CODAMA_ERROR__UNEXPECTED_NESTED_NODE_KIND,\n    CODAMA_ERROR__UNEXPECTED_NODE_KIND,\n    CODAMA_ERROR__UNRECOGNIZED_BYTES_ENCODING,\n    CODAMA_ERROR__UNRECOGNIZED_NODE_KIND,\n    CODAMA_ERROR__UNRECOGNIZED_NUMBER_FORMAT,\n    CODAMA_ERROR__VERSION_MISMATCH,\n    CODAMA_ERROR__VISITORS__ACCOUNT_FIELD_NOT_FOUND,\n    CODAMA_ERROR__VISITORS__CANNOT_ADD_DUPLICATED_PDA_NAMES,\n    CODAMA_ERROR__VISITORS__CANNOT_EXTEND_MISSING_VISIT_FUNCTION,\n    CODAMA_ERROR__VISITORS__CANNOT_FLATTEN_STRUCT_WITH_CONFLICTING_ATTRIBUTES,\n    CODAMA_ERROR__VISITORS__CANNOT_REMOVE_LAST_PATH_IN_NODE_STACK,\n    CODAMA_ERROR__VISITORS__CANNOT_USE_OPTIONAL_ACCOUNT_AS_PDA_SEED_VALUE,\n    CODAMA_ERROR__VISITORS__CYCLIC_DEPENDENCY_DETECTED_WHEN_RESOLVING_INSTRUCTION_DEFAULT_VALUES,\n    CODAMA_ERROR__VISITORS__FAILED_TO_VALIDATE_NODE,\n    CODAMA_ERROR__VISITORS__INSTRUCTION_ENUM_ARGUMENT_NOT_FOUND,\n    CODAMA_ERROR__VISITORS__INVALID_INSTRUCTION_DEFAULT_VALUE_DEPENDENCY,\n    CODAMA_ERROR__VISITORS__INVALID_NUMBER_WRAPPER,\n    CODAMA_ERROR__VISITORS__INVALID_PDA_SEED_VALUES,\n    CODAMA_ERROR__VISITORS__RENDER_MAP_KEY_NOT_FOUND,\n    CodamaErrorCode,\n} from './codes';\n\n/**\n * WARNING:\n *   - Don't change the meaning of an error message.\n */\nexport const CodamaErrorMessages: Readonly<{\n    // This type makes this data structure exhaustive with respect to `SolanaErrorCode`.\n    // TypeScript will fail to build this project if add an error code without a message.\n    [P in CodamaErrorCode]: string;\n}> = {\n    [CODAMA_ERROR__ANCHOR__ACCOUNT_TYPE_MISSING]: 'Account type [$name] is missing from the IDL types.',\n    [CODAMA_ERROR__ANCHOR__ARGUMENT_TYPE_MISSING]: 'Argument name [$name] is missing from the instruction definition.',\n    [CODAMA_ERROR__ANCHOR__EVENT_TYPE_MISSING]: 'Event type [$name] is missing from the IDL types.',\n    [CODAMA_ERROR__ANCHOR__GENERIC_TYPE_MISSING]: 'Generic type [$name] is missing from the IDL types.',\n    [CODAMA_ERROR__ANCHOR__PROGRAM_ID_KIND_UNIMPLEMENTED]: 'Program ID kind [$kind] is not implemented.',\n    [CODAMA_ERROR__ANCHOR__SEED_KIND_UNIMPLEMENTED]: 'Seed kind [$kind] is not implemented.',\n    [CODAMA_ERROR__ANCHOR__TYPE_PATH_MISSING]: 'Field type is missing for path [$path] in [$idlType].',\n    [CODAMA_ERROR__ANCHOR__UNRECOGNIZED_IDL_TYPE]: 'Unrecognized Anchor IDL type [$idlType].',\n    [CODAMA_ERROR__DISCRIMINATOR_FIELD_HAS_NO_DEFAULT_VALUE]: 'Discriminator field [$field] has no default value.',\n    [CODAMA_ERROR__DISCRIMINATOR_FIELD_NOT_FOUND]: 'Could not find discriminator field [$field]',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_MISSING]:\n        'Missing account [$accountName] in [$instructionName] instruction.',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__ACCOUNT_RESOLVER_MISSING]:\n        'Resolver [$resolverName] not provided for account [$accountName].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__ARGUMENT_MISSING]: 'Missing argument [$argumentName] in [$instructionName].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__CANNOT_CONVERT_TO_ADDRESS]: 'Cannot convert value to Address: [$value].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__CIRCULAR_ACCOUNT_DEPENDENCY]: 'Circular dependency detected: [$chain].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__DEFAULT_VALUE_MISSING]:\n        'Default value is missing for argument [$argumentName] in [$instructionName].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_DERIVE_PDA]: 'Failed to derive PDA for account [$accountName].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_ENCODE_ARGUMENT]:\n        'Failed to encode argument [$argumentName] in [$instructionName].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_EXECUTE_RESOLVER]:\n        'Resolver [$resolverName] threw an error while resolving [$targetKind] [$targetName].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__FAILED_TO_VALIDATE_INPUT]: 'Failed to validate input: [$message].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__INSTRUCTION_NOT_FOUND]:\n        'Instruction [$instructionName] not found in IDL. Available: [$availableIxs].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ACCOUNT_ADDRESS]: 'Invalid account address [$accountName]: [$value].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__INVALID_ARGUMENT_INPUT]:\n        'Invalid argument input [$argumentName]: [$value]. Expected [$expectedType].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__INVARIANT_VIOLATION]: 'Internal invariant violation: [$message].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__NODE_REFERENCE_NOT_FOUND]:\n        'Referenced node [$referencedName] not found in [$instructionName].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__PDA_NOT_FOUND]: 'PDA [$pdaName] not found in IDL. Available: [$available].',\n\n    [CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ADDRESS_TYPE]:\n        'Expected [$expectedType] for account [$accountName], but received [$actualType].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__UNEXPECTED_ARGUMENT_TYPE]:\n        'Expected [$expectedType] for [$nodeKind], but received [$actualType].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_NODE]: 'Unsupported node kind [$nodeKind].',\n    [CODAMA_ERROR__DYNAMIC_CLIENT__UNSUPPORTED_OPTIONAL_ACCOUNT_STRATEGY]:\n        'Unsupported optional account strategy [$strategy] for account [$accountName] in [$instructionName].',\n    [CODAMA_ERROR__ENUM_VARIANT_NOT_FOUND]: 'Enum variant [$variant] not found in enum type [$enumName].',\n    [CODAMA_ERROR__LINKED_NODE_NOT_FOUND]: 'Could not find linked node [$name] from [$kind].',\n    [CODAMA_ERROR__NODE_FILESYSTEM_FUNCTION_UNAVAILABLE]:\n        'Node.js filesystem function [$fsFunction] is not available in your environment.',\n    [CODAMA_ERROR__RENDERERS__MISSING_DEPENDENCY_VERSIONS]:\n        'No version specified for the following dependencies: [$dependencies]. $message',\n    [CODAMA_ERROR__RENDERERS__UNSUPPORTED_NODE]: 'Cannot render the encountered node of kind [$kind].',\n    [CODAMA_ERROR__UNEXPECTED_NESTED_NODE_KIND]: 'Expected nested node of kind [$expectedKinds], got [$kind]',\n    [CODAMA_ERROR__UNEXPECTED_NODE_KIND]: 'Expected node of kind [$expectedKinds], got [$kind].',\n    [CODAMA_ERROR__UNRECOGNIZED_BYTES_ENCODING]: 'Unrecognized bytes encoding [$encoding].',\n    [CODAMA_ERROR__UNRECOGNIZED_NODE_KIND]: 'Unrecognized node kind [$kind].',\n    [CODAMA_ERROR__UNRECOGNIZED_NUMBER_FORMAT]: 'Unrecognized number format [$format].',\n    [CODAMA_ERROR__VERSION_MISMATCH]:\n        'The provided RootNode version [$rootVersion] is not compatible with the installed Codama version [$codamaVersion].',\n    [CODAMA_ERROR__VISITORS__ACCOUNT_FIELD_NOT_FOUND]: 'Account [$name] does not have a field named [$missingField].',\n    [CODAMA_ERROR__VISITORS__CANNOT_ADD_DUPLICATED_PDA_NAMES]:\n        'Cannot add PDAs to program [$programName] because the following PDA names already exist [$duplicatedPdaNames].',\n    [CODAMA_ERROR__VISITORS__CANNOT_EXTEND_MISSING_VISIT_FUNCTION]:\n        'Cannot extend visitor with function [$visitFunction] as the base visitor does not support it.',\n    [CODAMA_ERROR__VISITORS__CANNOT_FLATTEN_STRUCT_WITH_CONFLICTING_ATTRIBUTES]:\n        'Cannot flatten struct since this would cause the following attributes to conflict [$conflictingAttributes].',\n    [CODAMA_ERROR__VISITORS__CANNOT_REMOVE_LAST_PATH_IN_NODE_STACK]: 'Cannot remove the last path in the node stack.',\n    [CODAMA_ERROR__VISITORS__CANNOT_USE_OPTIONAL_ACCOUNT_AS_PDA_SEED_VALUE]:\n        'Cannot use optional account [$seedValueName] as the [$seedName] PDA seed for the [$instructionAccountName] account of the [$instructionName] instruction.',\n    [CODAMA_ERROR__VISITORS__CYCLIC_DEPENDENCY_DETECTED_WHEN_RESOLVING_INSTRUCTION_DEFAULT_VALUES]:\n        \"Circular dependency detected when resolving the accounts and arguments' default values of the [$instructionName] instruction. Got the following dependency cycle [$formattedCycle].\",\n    [CODAMA_ERROR__VISITORS__FAILED_TO_VALIDATE_NODE]: 'Failed to validate the given node [$formattedHistogram].',\n    [CODAMA_ERROR__VISITORS__INSTRUCTION_ENUM_ARGUMENT_NOT_FOUND]:\n        'Could not find an enum argument named [$argumentName] for instruction [$instructionName].',\n    [CODAMA_ERROR__VISITORS__INVALID_INSTRUCTION_DEFAULT_VALUE_DEPENDENCY]:\n        'Dependency [$dependencyName] of kind [$dependencyKind] is not a valid dependency of [$parentName] of kind [$parentKind] in the [$instructionName] instruction.',\n    [CODAMA_ERROR__VISITORS__INVALID_NUMBER_WRAPPER]: 'Invalid number wrapper kind [$wrapper].',\n    [CODAMA_ERROR__VISITORS__INVALID_PDA_SEED_VALUES]:\n        'Invalid seed values for PDA [$pdaName] in instruction [$instructionName].',\n    [CODAMA_ERROR__VISITORS__RENDER_MAP_KEY_NOT_FOUND]: 'Cannot find key [$key] in RenderMap.',\n};\n","/**\n * Heavily inspired by @solana/errors.\n * @see https://github.com/anza-xyz/kit/blob/main/packages/errors\n */\n\nimport { CodamaErrorCode } from './codes';\nimport { encodeContextObject } from './context';\nimport { CodamaErrorMessages } from './messages';\n\nexport function getHumanReadableErrorMessage<TErrorCode extends CodamaErrorCode>(\n    code: TErrorCode,\n    context: object = {},\n): string {\n    const messageFormatString = CodamaErrorMessages[code];\n    const message = messageFormatString.replace(/(?<!\\\\)\\$(\\w+)/g, (substring, variableName) =>\n        variableName in context ? `${context[variableName as keyof typeof context] as string}` : substring,\n    );\n    return message;\n}\n\nexport function getErrorMessage<TErrorCode extends CodamaErrorCode>(code: TErrorCode, context: object = {}): string {\n    if (process.env.NODE_ENV !== 'production') {\n        return getHumanReadableErrorMessage(code, context);\n    } else {\n        let decodingAdviceMessage = `Codama error #${code}; Decode this error by running \\`npx @codama/errors decode -- ${code}`;\n        if (Object.keys(context).length) {\n            /**\n             * DANGER: Be sure that the shell command is escaped in such a way that makes it\n             *         impossible for someone to craft malicious context values that would result in\n             *         an exploit against anyone who bindly copy/pastes it into their terminal.\n             */\n            decodingAdviceMessage += ` '${encodeContextObject(context)}'`;\n        }\n        return `${decodingAdviceMessage}\\``;\n    }\n}\n","/**\n * Heavily inspired by @solana/errors.\n * @see https://github.com/anza-xyz/kit/blob/main/packages/errors\n */\n\nimport { CodamaErrorCode } from './codes';\nimport { CodamaErrorContext } from './context';\nimport { getErrorMessage } from './message-formatter';\n\nexport function isCodamaError<TErrorCode extends CodamaErrorCode>(\n    e: unknown,\n    code?: TErrorCode,\n): e is CodamaError<TErrorCode> {\n    const isCodamaError = e instanceof Error && e.name === 'CodamaError';\n    if (isCodamaError) {\n        if (code !== undefined) {\n            return (e as CodamaError<TErrorCode>).context.__code === code;\n        }\n        return true;\n    }\n    return false;\n}\n\ntype CodamaErrorCodedContext = Readonly<{\n    [P in CodamaErrorCode]: (CodamaErrorContext[P] extends undefined ? object : CodamaErrorContext[P]) & {\n        __code: P;\n    };\n}>;\n\nexport class CodamaError<TErrorCode extends CodamaErrorCode = CodamaErrorCode> extends Error {\n    readonly context: CodamaErrorCodedContext[TErrorCode];\n    constructor(\n        ...[code, contextAndErrorOptions]: CodamaErrorContext[TErrorCode] extends undefined\n            ? [code: TErrorCode, errorOptions?: ErrorOptions | undefined]\n            : [code: TErrorCode, contextAndErrorOptions: CodamaErrorContext[TErrorCode] & (ErrorOptions | undefined)]\n    ) {\n        let context: CodamaErrorContext[TErrorCode] | undefined;\n        let errorOptions: ErrorOptions | undefined;\n        if (contextAndErrorOptions) {\n            // If the `ErrorOptions` type ever changes, update this code.\n            const { cause, ...contextRest } = contextAndErrorOptions;\n            if (cause) {\n                errorOptions = { cause };\n            }\n            if (Object.keys(contextRest).length > 0) {\n                context = contextRest as CodamaErrorContext[TErrorCode];\n            }\n        }\n        const message = getErrorMessage(code, context);\n        super(message, errorOptions);\n        this.context = {\n            __code: code,\n            ...context,\n        } as CodamaErrorCodedContext[TErrorCode];\n        // This is necessary so that `isCodamaError()` can identify a `CodamaError` without having\n        // to import the class for use in an `instanceof` check.\n        this.name = 'CodamaError';\n    }\n}\n","export function logError(message: string) {\n    console.error(message);\n}\n\nexport function logWarn(message: string) {\n    console.warn(message);\n}\n\nexport function logInfo(message: string) {\n    console.log(message);\n}\n","/**\n * Heavily inspired by @solana/errors.\n * @see https://github.com/anza-xyz/kit/blob/main/packages/errors\n */\n\nexport function safeCaptureStackTrace(...args: Parameters<typeof Error.captureStackTrace>): void {\n    if ('captureStackTrace' in Error && typeof Error.captureStackTrace === 'function') {\n        Error.captureStackTrace(...args);\n    }\n}\n"]}