#
tokens: 48929/50000 22/942 files (page 13/93)
lines: on (toggle) GitHub
raw markdown copy reset
This is page 13 of 93. Use http://codebase.md/goplausible/algorand-mcp?lines=true&page={x} to view the full context.

# Directory Structure

```
├── .gitignore
├── CONTRIBUTING.md
├── LICENSE
├── llms-install.md
├── llms.txt
├── package.json
├── packages
│   ├── client
│   │   ├── .env.example
│   │   ├── package.json
│   │   ├── README.md
│   │   ├── src
│   │   │   ├── env.ts
│   │   │   ├── index.ts
│   │   │   └── LocalWallet.ts
│   │   └── tsconfig.json
│   └── server
│       ├── .env.example
│       ├── API specs
│       │   ├── algod_api.json
│       │   ├── indexer_api.json
│       │   ├── mcp.json
│       │   ├── nfd_api.json
│       │   ├── ultrade_api.json
│       │   ├── vestige_api.json
│       │   └── vestige_free_api.json
│       ├── Dockerfile
│       ├── jest.config.js
│       ├── package.json
│       ├── README.md
│       ├── smithery.yaml
│       ├── src
│       │   ├── algorand-client.ts
│       │   ├── env.ts
│       │   ├── index.ts
│       │   ├── resources
│       │   │   ├── index.ts
│       │   │   ├── knowledge
│       │   │   │   ├── ARCs.txt
│       │   │   │   ├── developers-algokit-architecture-decisions.txt
│       │   │   │   ├── developers-algokit-cli.txt
│       │   │   │   ├── developers-algokit-utils-python.txt
│       │   │   │   ├── developers-algokit-utils-typescript.txt
│       │   │   │   ├── developers-clis.txt
│       │   │   │   ├── developers-details.txt
│       │   │   │   ├── developers-liquid-auth.txt
│       │   │   │   ├── developers-nodes.txt
│       │   │   │   ├── developers-puya.txt
│       │   │   │   ├── developers-python.txt
│       │   │   │   ├── developers-sdks-js.txt
│       │   │   │   ├── developers-sdks-python.txt
│       │   │   │   ├── developers-tealscript.txt
│       │   │   │   ├── developers.txt
│       │   │   │   ├── index.ts
│       │   │   │   ├── taxonomy
│       │   │   │   │   ├── algokit-cli:README.md
│       │   │   │   │   ├── algokit:cli:algokit.md
│       │   │   │   │   ├── algokit:cli:architecture-decisions:2022-11-14_sandbox-approach.md
│       │   │   │   │   ├── algokit:cli:architecture-decisions:2022-11-22_beaker-testing-strategy.md
│       │   │   │   │   ├── algokit:cli:architecture-decisions:2023-01-11_beaker_productionisation_review.md
│       │   │   │   │   ├── algokit:cli:architecture-decisions:2023-01-11_brew_install.md
│       │   │   │   │   ├── algokit:cli:architecture-decisions:2023-01-12_smart-contract-deployment.md
│       │   │   │   │   ├── algokit:cli:architecture-decisions:2023-06-06_frontend-templates.md
│       │   │   │   │   ├── algokit:cli:architecture-decisions:2023-07-19_advanced_generate_command.md
│       │   │   │   │   ├── algokit:cli:architecture-decisions:2024-01-13_native_binaries.md
│       │   │   │   │   ├── algokit:cli:architecture-decisions:2024-01-23_init-wizard-v2.md
│       │   │   │   │   ├── algokit:cli:architecture-decisions:2024-01-31_binary_distribution.md
│       │   │   │   │   ├── algokit:cli:architecture-decisions:2024-03-06_local_dev_ui_packaging.md
│       │   │   │   │   ├── algokit:cli:articles:output_stability.md
│       │   │   │   │   ├── algokit:cli:cli:index.md
│       │   │   │   │   ├── algokit:cli:features:compile.md
│       │   │   │   │   ├── algokit:cli:features:completions.md
│       │   │   │   │   ├── algokit:cli:features:config.md
│       │   │   │   │   ├── algokit:cli:features:dispenser.md
│       │   │   │   │   ├── algokit:cli:features:doctor.md
│       │   │   │   │   ├── algokit:cli:features:explore.md
│       │   │   │   │   ├── algokit:cli:features:generate.md
│       │   │   │   │   ├── algokit:cli:features:goal.md
│       │   │   │   │   ├── algokit:cli:features:init.md
│       │   │   │   │   ├── algokit:cli:features:localnet.md
│       │   │   │   │   ├── algokit:cli:features:project:bootstrap.md
│       │   │   │   │   ├── algokit:cli:features:project:deploy.md
│       │   │   │   │   ├── algokit:cli:features:project:link.md
│       │   │   │   │   ├── algokit:cli:features:project:list.md
│       │   │   │   │   ├── algokit:cli:features:project:run.md
│       │   │   │   │   ├── algokit:cli:features:project.md
│       │   │   │   │   ├── algokit:cli:features:tasks:analyze.md
│       │   │   │   │   ├── algokit:cli:features:tasks:ipfs.md
│       │   │   │   │   ├── algokit:cli:features:tasks:mint.md
│       │   │   │   │   ├── algokit:cli:features:tasks:nfd.md
│       │   │   │   │   ├── algokit:cli:features:tasks:opt.md
│       │   │   │   │   ├── algokit:cli:features:tasks:send.md
│       │   │   │   │   ├── algokit:cli:features:tasks:sign.md
│       │   │   │   │   ├── algokit:cli:features:tasks:transfer.md
│       │   │   │   │   ├── algokit:cli:features:tasks:vanity_address.md
│       │   │   │   │   ├── algokit:cli:features:tasks:wallet.md
│       │   │   │   │   ├── algokit:cli:features:tasks.md
│       │   │   │   │   ├── algokit:cli:tutorials:algokit-template.md
│       │   │   │   │   ├── algokit:cli:tutorials:intro.md
│       │   │   │   │   ├── algokit:cli:tutorials:smart-contracts.md
│       │   │   │   │   ├── algokit:docs:testnet_api.md
│       │   │   │   │   ├── algokit:lora:README.md
│       │   │   │   │   ├── algokit:README.md
│       │   │   │   │   ├── algokit:utils:python:markdown:apidocs:algokit_utils:algokit_utils.md
│       │   │   │   │   ├── algokit:utils:python:markdown:capabilities:account.md
│       │   │   │   │   ├── algokit:utils:python:markdown:capabilities:app-client.md
│       │   │   │   │   ├── algokit:utils:python:markdown:capabilities:app-deploy.md
│       │   │   │   │   ├── algokit:utils:python:markdown:capabilities:client.md
│       │   │   │   │   ├── algokit:utils:python:markdown:capabilities:debugger.md
│       │   │   │   │   ├── algokit:utils:python:markdown:capabilities:dispenser-client.md
│       │   │   │   │   ├── algokit:utils:python:markdown:capabilities:transfer.md
│       │   │   │   │   ├── algokit:utils:python:markdown:index.md
│       │   │   │   │   ├── algokit:utils:python:README.md
│       │   │   │   │   ├── algokit:utils:python:source:capabilities:account.md
│       │   │   │   │   ├── algokit:utils:python:source:capabilities:app-client.md
│       │   │   │   │   ├── algokit:utils:python:source:capabilities:app-deploy.md
│       │   │   │   │   ├── algokit:utils:python:source:capabilities:client.md
│       │   │   │   │   ├── algokit:utils:python:source:capabilities:debugger.md
│       │   │   │   │   ├── algokit:utils:python:source:capabilities:dispenser-client.md
│       │   │   │   │   ├── algokit:utils:python:source:capabilities:transfer.md
│       │   │   │   │   ├── algokit:utils:python:source:index.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:account.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:algorand-client.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:amount.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:app-client.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:app-deploy.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:app.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:asset.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:client.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:debugging.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:dispenser-client.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:event-emitter.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:indexer.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:testing.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:transaction-composer.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:transaction.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:transfer.md
│       │   │   │   │   ├── algokit:utils:typescript:capabilities:typed-app-clients.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:testing.TestLogger.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:testing.TransactionLogger.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_account_manager.AccountManager.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_account.MultisigAccount.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_account.SigningAccount.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_algo_http_client_with_retry.AlgoHttpClientWithRetry.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_algorand_client_transaction_creator.AlgorandClientTransactionCreator.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_algorand_client_transaction_sender.AlgorandClientTransactionSender.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_algorand_client.AlgorandClient.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_amount.AlgoAmount.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_app_arc56.Arc56Method.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_app_client.AppClient.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_app_client.ApplicationClient.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_app_deployer.AppDeployer.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_app_factory.AppFactory.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_app_manager.AppManager.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_asset_manager.AssetManager.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_async_event_emitter.AsyncEventEmitter.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_client_manager.ClientManager.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_composer.TransactionComposer.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_config.UpdatableConfig.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_dispenser_client.TestNetDispenserApiClient.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_kmd_account_manager.KmdAccountManager.md
│       │   │   │   │   ├── algokit:utils:typescript:code:classes:types_logic_error.LogicError.md
│       │   │   │   │   ├── algokit:utils:typescript:code:enums:types_app.OnSchemaBreak.md
│       │   │   │   │   ├── algokit:utils:typescript:code:enums:types_app.OnUpdate.md
│       │   │   │   │   ├── algokit:utils:typescript:code:enums:types_indexer.AccountStatus.md
│       │   │   │   │   ├── algokit:utils:typescript:code:enums:types_indexer.ApplicationOnComplete.md
│       │   │   │   │   ├── algokit:utils:typescript:code:enums:types_indexer.SignatureType.md
│       │   │   │   │   ├── algokit:utils:typescript:code:enums:types_lifecycle_events.EventType.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_account_manager.EnsureFundedResult.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_account.AccountConfig.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_account.TransactionSignerAccount.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_algorand_client_interface.AlgorandClientInterface.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_arc56.Arc56Contract.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_arc56.Event.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_arc56.Method.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_arc56.ProgramSourceInfo.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_arc56.StorageKey.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_arc56.StorageMap.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_arc56.StructField.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.AppClientCallABIArgs.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.AppClientCallCoreParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.AppClientCompilationParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.AppClientCompilationResult.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.AppClientDeployCallInterfaceParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.AppClientDeployCoreParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.AppClientDeployParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.AppClientParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.AppSourceMaps.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.FundAppAccountParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.ResolveAppById.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.ResolveAppByIdBase.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_client.SourceMapExport.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_deployer.AppLookup.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_deployer.AppMetadata.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_factory.AppFactoryParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_manager.AppInformation.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_manager.BoxReference.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_manager.BoxValueRequestParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_manager.BoxValuesRequestParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_spec.AppSources.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_spec.AppSpec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_spec.CallConfig.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_spec.DeclaredSchemaValueSpec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_spec.Hint.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_spec.ReservedSchemaValueSpec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_spec.Schema.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_spec.SchemaSpec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_spec.StateSchemaSpec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app_spec.Struct.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.AppCallParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.AppCallTransactionResultOfType.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.AppCompilationResult.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.AppDeploymentParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.AppDeployMetadata.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.AppLookup.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.AppMetadata.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.AppReference.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.AppState.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.AppStorageSchema.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.BoxName.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.BoxReference.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.BoxValueRequestParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.BoxValuesRequestParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.CompiledTeal.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.CoreAppCallArgs.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.CreateAppParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.RawAppCallArgs.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.TealTemplateParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_app.UpdateAppParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_asset_manager.AssetInformation.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_asset_manager.BulkAssetOptInOutResult.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_asset.AssetBulkOptInOutParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_asset.AssetOptInParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_asset.AssetOptOutParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_asset.CreateAssetParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_client_manager.AlgoSdkClients.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_client_manager.TypedAppClient.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_client_manager.TypedAppFactory.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_composer.BuiltTransactions.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_config.Config.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_debugging.AVMTracesEventData.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_debugging.TealSourceDebugEventData.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_debugging.TealSourcesDebugEventData.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_dispenser_client.DispenserFundResponse.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_dispenser_client.DispenserLimitResponse.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_dispenser_client.TestNetDispenserApiClientParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_indexer.LookupAssetHoldingsOptions.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_logic_error.LogicErrorDetails.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_network_client.AlgoClientConfig.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_network_client.AlgoConfig.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_network_client.NetworkDetails.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_testing.AlgoKitLogCaptureFixture.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_testing.AlgorandFixture.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_testing.AlgorandFixtureConfig.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_testing.AlgorandTestAutomationContext.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_testing.GetTestAccountParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_testing.LogSnapshotConfig.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transaction.AtomicTransactionComposerToSend.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transaction.ConfirmedTransactionResult.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transaction.ConfirmedTransactionResults.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transaction.SendAtomicTransactionComposerResults.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transaction.SendParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transaction.SendTransactionParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transaction.SendTransactionResult.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transaction.SendTransactionResults.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transaction.TransactionGroupToSend.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transaction.TransactionToSign.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transfer.AlgoRekeyParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transfer.AlgoTransferParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transfer.EnsureFundedParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transfer.EnsureFundedReturnType.md
│       │   │   │   │   ├── algokit:utils:typescript:code:interfaces:types_transfer.TransferAssetParams.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:index.indexer.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:index.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:testing.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_account_manager_spec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_account_manager.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_account.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_algo_http_client_with_retry.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_algorand_client_asset_spec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_algorand_client_interface.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_algorand_client_spec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_algorand_client_transaction_creator.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_algorand_client_transaction_sender.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_algorand_client_transfer_spec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_algorand_client.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_amount_spec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_amount.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_app_arc56.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_app_client_spec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_app_client.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_app_deployer.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_app_factory_and_client_spec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_app_factory.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_app_manager.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_app_spec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_app.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_asset_manager.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_asset.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_async_event_emitter_spec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_async_event_emitter.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_client_manager_spec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_client_manager.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_composer.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_config.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_debugging.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_dispenser_client_spec.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_dispenser_client.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_expand.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_indexer.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_kmd_account_manager.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_lifecycle_events.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_logging.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_logic_error.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_network_client.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_testing.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_transaction.md
│       │   │   │   │   ├── algokit:utils:typescript:code:modules:types_transfer.md
│       │   │   │   │   ├── algokit:utils:typescript:code:README.md
│       │   │   │   │   ├── algokit:utils:typescript:README.md
│       │   │   │   │   ├── algokit:utils:typescript:v7-migration.md
│       │   │   │   │   ├── algokit:utils:typescript:v8-migration.md
│       │   │   │   │   ├── ARCs:ARC-template.md
│       │   │   │   │   ├── ARCs:assets:arc-0012:README.md
│       │   │   │   │   ├── ARCs:assets:arc-0034:TemplateForm.md
│       │   │   │   │   ├── ARCs:assets:arc-0062:README.md
│       │   │   │   │   ├── ARCs:pages:nfts.md
│       │   │   │   │   ├── ARCs:pages:wallets.md
│       │   │   │   │   ├── ARCs:README.md
│       │   │   │   │   ├── ARCs:specs:arc-0000.md
│       │   │   │   │   ├── ARCs:specs:arc-0001.md
│       │   │   │   │   ├── ARCs:specs:arc-0002.md
│       │   │   │   │   ├── ARCs:specs:arc-0003.md
│       │   │   │   │   ├── ARCs:specs:arc-0004.md
│       │   │   │   │   ├── ARCs:specs:arc-0005.md
│       │   │   │   │   ├── ARCs:specs:arc-0006.md
│       │   │   │   │   ├── ARCs:specs:arc-0007.md
│       │   │   │   │   ├── ARCs:specs:arc-0008.md
│       │   │   │   │   ├── ARCs:specs:arc-0009.md
│       │   │   │   │   ├── ARCs:specs:arc-0010.md
│       │   │   │   │   ├── ARCs:specs:arc-0011.md
│       │   │   │   │   ├── ARCs:specs:arc-0012.md
│       │   │   │   │   ├── ARCs:specs:arc-0015.md
│       │   │   │   │   ├── ARCs:specs:arc-0016.md
│       │   │   │   │   ├── ARCs:specs:arc-0018.md
│       │   │   │   │   ├── ARCs:specs:arc-0019.md
│       │   │   │   │   ├── ARCs:specs:arc-0020.md
│       │   │   │   │   ├── ARCs:specs:arc-0021.md
│       │   │   │   │   ├── ARCs:specs:arc-0022.md
│       │   │   │   │   ├── ARCs:specs:arc-0023.md
│       │   │   │   │   ├── ARCs:specs:arc-0025.md
│       │   │   │   │   ├── ARCs:specs:arc-0026.md
│       │   │   │   │   ├── ARCs:specs:arc-0028.md
│       │   │   │   │   ├── ARCs:specs:arc-0032.md
│       │   │   │   │   ├── ARCs:specs:arc-0033.md
│       │   │   │   │   ├── ARCs:specs:arc-0034.md
│       │   │   │   │   ├── ARCs:specs:arc-0035.md
│       │   │   │   │   ├── ARCs:specs:arc-0036.md
│       │   │   │   │   ├── ARCs:specs:arc-0042.md
│       │   │   │   │   ├── ARCs:specs:arc-0047.md
│       │   │   │   │   ├── ARCs:specs:arc-0048.md
│       │   │   │   │   ├── ARCs:specs:arc-0049.md
│       │   │   │   │   ├── ARCs:specs:arc-0054.md
│       │   │   │   │   ├── ARCs:specs:arc-0055.md
│       │   │   │   │   ├── ARCs:specs:arc-0056.md
│       │   │   │   │   ├── ARCs:specs:arc-0059.md
│       │   │   │   │   ├── ARCs:specs:arc-0062.md
│       │   │   │   │   ├── ARCs:specs:arc-0065.md
│       │   │   │   │   ├── ARCs:specs:arc-0069.md
│       │   │   │   │   ├── ARCs:specs:arc-0072.md
│       │   │   │   │   ├── ARCs:specs:arc-0073.md
│       │   │   │   │   ├── ARCs:specs:arc-0074.md
│       │   │   │   │   ├── ARCs:specs:arc-0076.md
│       │   │   │   │   ├── ARCs:specs:arc-0078.md
│       │   │   │   │   ├── ARCs:specs:arc-0079.md
│       │   │   │   │   ├── ARCs:specs:arc-0200.md
│       │   │   │   │   ├── clis_index.md
│       │   │   │   │   ├── developer:docs:about.md
│       │   │   │   │   ├── developer:docs:clis:algokey:algokey.md
│       │   │   │   │   ├── developer:docs:clis:algokey:generate.md
│       │   │   │   │   ├── developer:docs:clis:algokey:import.md
│       │   │   │   │   ├── developer:docs:clis:algokey:multisig:append-auth-addr.md
│       │   │   │   │   ├── developer:docs:clis:algokey:multisig:multisig.md
│       │   │   │   │   ├── developer:docs:clis:algokey:part:info.md
│       │   │   │   │   ├── developer:docs:clis:algokey:part:part.md
│       │   │   │   │   ├── developer:docs:clis:algokey:part:reparent.md
│       │   │   │   │   ├── developer:docs:clis:algokey:sign.md
│       │   │   │   │   ├── developer:docs:clis:conduit:conduit.md
│       │   │   │   │   ├── developer:docs:clis:conduit:init.md
│       │   │   │   │   ├── developer:docs:clis:conduit:list:exporters.md
│       │   │   │   │   ├── developer:docs:clis:conduit:list:importers.md
│       │   │   │   │   ├── developer:docs:clis:conduit:list:list.md
│       │   │   │   │   ├── developer:docs:clis:conduit:list:processors.md
│       │   │   │   │   ├── developer:docs:clis:diagcfg:diagcfg.md
│       │   │   │   │   ├── developer:docs:clis:diagcfg:metric:disable.md
│       │   │   │   │   ├── developer:docs:clis:diagcfg:metric:enable.md
│       │   │   │   │   ├── developer:docs:clis:diagcfg:metric:metric.md
│       │   │   │   │   ├── developer:docs:clis:diagcfg:metric:status.md
│       │   │   │   │   ├── developer:docs:clis:diagcfg:telemetry:disable.md
│       │   │   │   │   ├── developer:docs:clis:diagcfg:telemetry:enable.md
│       │   │   │   │   ├── developer:docs:clis:diagcfg:telemetry:endpoint.md
│       │   │   │   │   ├── developer:docs:clis:diagcfg:telemetry:name.md
│       │   │   │   │   ├── developer:docs:clis:diagcfg:telemetry:status.md
│       │   │   │   │   ├── developer:docs:clis:diagcfg:telemetry:telemetry.md
│       │   │   │   │   ├── developer:docs:clis:goal:node:restart.md
│       │   │   │   │   ├── developer:docs:clis:goal:node:start.md
│       │   │   │   │   ├── developer:docs:clis:goal:node:status.md
│       │   │   │   │   ├── developer:docs:clis:goal:node:stop.md
│       │   │   │   │   ├── developer:docs:clis:goal:node:wait.md
│       │   │   │   │   ├── developer:docs:clis:goal:protocols.md
│       │   │   │   │   ├── developer:docs:clis:goal:report.md
│       │   │   │   │   ├── developer:docs:clis:goal:version.md
│       │   │   │   │   ├── developer:docs:clis:goal:wallet:list.md
│       │   │   │   │   ├── developer:docs:clis:goal:wallet:new.md
│       │   │   │   │   ├── developer:docs:clis:goal:wallet:wallet.md
│       │   │   │   │   ├── developer:docs:clis:indexer:api-config.md
│       │   │   │   │   ├── developer:docs:clis:indexer:daemon.md
│       │   │   │   │   ├── developer:docs:clis:indexer:indexer.md
│       │   │   │   │   ├── developer:docs:clis:indexer:util:util.md
│       │   │   │   │   ├── developer:docs:clis:indexer:util:validator.md
│       │   │   │   │   ├── developer:docs:clis:kmd.md
│       │   │   │   │   ├── developer:docs:clis:tealdbg:debug.md
│       │   │   │   │   ├── developer:docs:clis:tealdbg:remote.md
│       │   │   │   │   ├── developer:docs:clis:tealdbg:tealdbg.md
│       │   │   │   │   ├── developer:docs:details:accounts:create.md
│       │   │   │   │   ├── developer:docs:details:accounts:index.md
│       │   │   │   │   ├── developer:docs:details:accounts:rekey.md
│       │   │   │   │   ├── developer:docs:details:algorand_consensus.md
│       │   │   │   │   ├── developer:docs:details:algorand-networks:betanet.md
│       │   │   │   │   ├── developer:docs:details:algorand-networks:index.md
│       │   │   │   │   ├── developer:docs:details:algorand-networks:mainnet.md
│       │   │   │   │   ├── developer:docs:details:algorand-networks:testnet.md
│       │   │   │   │   ├── developer:docs:details:asa.md
│       │   │   │   │   ├── developer:docs:details:atc.md
│       │   │   │   │   ├── developer:docs:details:atomic_transfers.md
│       │   │   │   │   ├── developer:docs:details:conduit.md
│       │   │   │   │   ├── developer:docs:details:crust.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:index.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:guidelines.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:index.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:jsonspec.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:opcodes:index.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:opcodes:v1.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:opcodes:v10.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:opcodes:v2.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:opcodes:v3.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:opcodes:v4.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:opcodes:v5.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:opcodes:v6.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:opcodes:v7.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:opcodes:v8.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:opcodes:v9.md
│       │   │   │   │   ├── developer:docs:details:dapps:avm:teal:specification.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:ABI:index.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:apps:create.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:apps:index.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:apps:innertx.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:apps:state.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:apps:txs.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:debugging.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:frontend:apps.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:frontend:smartsigs.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:guidelines.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:index.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:smartsigs:index.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:smartsigs:modes.md
│       │   │   │   │   ├── developer:docs:details:dapps:smart-contracts:smartsigs:walkthrough.md
│       │   │   │   │   ├── developer:docs:details:dapps:writing-contracts:beaker.md
│       │   │   │   │   ├── developer:docs:details:dapps:writing-contracts:pyteal.md
│       │   │   │   │   ├── developer:docs:details:dapps:writing-contracts:python.md
│       │   │   │   │   ├── developer:docs:details:encoding.md
│       │   │   │   │   ├── developer:docs:details:ethereum_to_algorand.md
│       │   │   │   │   ├── developer:docs:details:index.md
│       │   │   │   │   ├── developer:docs:details:indexer.md
│       │   │   │   │   ├── developer:docs:details:parameter_tables.md
│       │   │   │   │   ├── developer:docs:details:stateproofs:index.md
│       │   │   │   │   ├── developer:docs:details:stateproofs:light_client.md
│       │   │   │   │   ├── developer:docs:details:technical_faq.md
│       │   │   │   │   ├── developer:docs:details:transactions:index.md
│       │   │   │   │   ├── developer:docs:details:transactions:offline_transactions.md
│       │   │   │   │   ├── developer:docs:details:transactions:payment_prompts.md
│       │   │   │   │   ├── developer:docs:details:transactions:signatures.md
│       │   │   │   │   ├── developer:docs:details:transactions:transactions.md
│       │   │   │   │   ├── developer:docs:details:useful_resources.md
│       │   │   │   │   ├── developer:docs:get-started:algokit.md
│       │   │   │   │   ├── developer:docs:get-started:basics:what_is_blockchain.md
│       │   │   │   │   ├── developer:docs:get-started:basics:whats_a_dapp.md
│       │   │   │   │   ├── developer:docs:get-started:basics:where_to_start.md
│       │   │   │   │   ├── developer:docs:get-started:basics:why_algorand.md
│       │   │   │   │   ├── developer:docs:get-started:tokenization:ft.md
│       │   │   │   │   ├── developer:docs:get-started:tokenization:nft.md
│       │   │   │   │   ├── developer:docs:index.md
│       │   │   │   │   ├── developer:docs:rest-apis:algod.md
│       │   │   │   │   ├── developer:docs:rest-apis:indexer.md
│       │   │   │   │   ├── developer:docs:rest-apis:kmd.md
│       │   │   │   │   ├── developer:docs:rest-apis:restendpoints.md
│       │   │   │   │   ├── developer:docs:run-a-node:operations:catchup.md
│       │   │   │   │   ├── developer:docs:run-a-node:operations:switch_networks.md
│       │   │   │   │   ├── developer:docs:run-a-node:participate:generate_keys.md
│       │   │   │   │   ├── developer:docs:run-a-node:participate:index.md
│       │   │   │   │   ├── developer:docs:run-a-node:participate:offline.md
│       │   │   │   │   ├── developer:docs:run-a-node:participate:online.md
│       │   │   │   │   ├── developer:docs:run-a-node:participate:renew.md
│       │   │   │   │   ├── developer:docs:run-a-node:reference:artifacts.md
│       │   │   │   │   ├── developer:docs:run-a-node:reference:config.md
│       │   │   │   │   ├── developer:docs:run-a-node:reference:relay.md
│       │   │   │   │   ├── developer:docs:run-a-node:reference:telemetry-config.md
│       │   │   │   │   ├── developer:docs:run-a-node:setup:indexer.md
│       │   │   │   │   ├── developer:docs:run-a-node:setup:install.md
│       │   │   │   │   ├── developer:docs:run-a-node:setup:node-troubleshooting.md
│       │   │   │   │   ├── developer:docs:run-a-node:setup:types.md
│       │   │   │   │   ├── developer:docs:sdks:go:index.md
│       │   │   │   │   ├── developer:docs:sdks:index.md
│       │   │   │   │   ├── developer:docs:sdks:java:index.md
│       │   │   │   │   ├── developer:docs:sdks:javascript:index.md
│       │   │   │   │   ├── developer:docs:sdks:python:index.md
│       │   │   │   │   ├── developer:python:code:example:accounts.md
│       │   │   │   │   ├── developer:python:code:example:arc4_types.md
│       │   │   │   │   ├── developer:python:code:example:assets.md
│       │   │   │   │   ├── developer:python:code:example:box_storage.md
│       │   │   │   │   ├── developer:python:code:example:control_flow.md
│       │   │   │   │   ├── developer:python:code:example:crypto:merkle_tree.md
│       │   │   │   │   ├── developer:python:code:example:defi:amm.md
│       │   │   │   │   ├── developer:python:code:example:defi:auction.md
│       │   │   │   │   ├── developer:python:code:example:defi:htlc_logicsig.md
│       │   │   │   │   ├── developer:python:code:example:defi:marketplace.md
│       │   │   │   │   ├── developer:python:code:example:events:arc28_events.md
│       │   │   │   │   ├── developer:python:code:example:global_storage.md
│       │   │   │   │   ├── developer:python:code:example:governance:simple_voting.md
│       │   │   │   │   ├── developer:python:code:example:hello_world.md
│       │   │   │   │   ├── developer:python:code:example:inner_transactions.md
│       │   │   │   │   ├── developer:python:code:example:local_storage.md
│       │   │   │   │   ├── developer:python:code:example:nft:proof_of_attendance.md
│       │   │   │   │   ├── developer:python:code:example:privacy:zk_whitelist.md
│       │   │   │   │   ├── developer:python:code:example:scratch_storage.md
│       │   │   │   │   ├── developer:python:code:example:self_payment.md
│       │   │   │   │   ├── developer:python:code:example:struct_in_box.md
│       │   │   │   │   ├── developer:python:code:example:subsidize_app_call.md
│       │   │   │   │   ├── developer:python:code:example:transactions.md
│       │   │   │   │   ├── developer:python:code:example:utility:calculator.md
│       │   │   │   │   ├── devportal-code-examples:projects:python-contract-examples:README.md
│       │   │   │   │   ├── devportal-code-examples:README.md
│       │   │   │   │   ├── docs:.walletconnect:index.md
│       │   │   │   │   ├── docs:.walletconnect:walletconnect-schema.md
│       │   │   │   │   ├── docs:README.md
│       │   │   │   │   ├── docs:scripts:example_tracker:example_list.md
│       │   │   │   │   ├── docs:scripts:README.md
│       │   │   │   │   ├── index.md
│       │   │   │   │   ├── liquid_auth_index.md
│       │   │   │   │   ├── liquid-auth:ARCHITECTURE.md
│       │   │   │   │   ├── liquid-auth:decisions:1-Service-Authentication.md
│       │   │   │   │   ├── liquid-auth:decisions:2-Bidirectional-Communication.md
│       │   │   │   │   ├── liquid-auth:decisions:3-Peer-to-Peer-Signaling.md
│       │   │   │   │   ├── liquid-auth:decisions:4-Fido-Extension.md
│       │   │   │   │   ├── liquid-auth:decisions:README.md
│       │   │   │   │   ├── liquid-auth:docs:architecture.md
│       │   │   │   │   ├── liquid-auth:docs:clients:android:provider-service:authenticate.md
│       │   │   │   │   ├── liquid-auth:docs:clients:android:provider-service:register.md
│       │   │   │   │   ├── liquid-auth:docs:clients:browser:authentication.md
│       │   │   │   │   ├── liquid-auth:docs:clients:browser:example.md
│       │   │   │   │   ├── liquid-auth:docs:introduction.md
│       │   │   │   │   ├── liquid-auth:docs:README.md
│       │   │   │   │   ├── liquid-auth:docs:server:environment-variables.md
│       │   │   │   │   ├── liquid-auth:docs:server:integrations.md
│       │   │   │   │   ├── liquid-auth:docs:server:introduction.md
│       │   │   │   │   ├── liquid-auth:docs:server:running-locally.md
│       │   │   │   │   ├── liquid-auth:README.md
│       │   │   │   │   ├── liquid-auth:SEQUENCE.md
│       │   │   │   │   ├── liquid-auth:services:liquid-auth-api-js:src:assertion:assertion.controller.post.request.md
│       │   │   │   │   ├── liquid-auth:services:liquid-auth-api-js:src:assertion:assertion.controller.post.response.md
│       │   │   │   │   ├── liquid-auth:services:liquid-auth-api-js:src:attestation:attestation.controller.post.request.md
│       │   │   │   │   ├── liquid-auth:services:liquid-auth-api-js:src:auth:auth.controller.get.user.md
│       │   │   │   │   ├── liquid-auth:sites:express-dapp:README.md
│       │   │   │   │   ├── liquid-auth:VISION.md
│       │   │   │   │   ├── puya_index.md
│       │   │   │   │   ├── puya:docs:algopy_testing:index.md
│       │   │   │   │   ├── puya:docs:api-algopy.arc4.md
│       │   │   │   │   ├── puya:docs:api-algopy.gtxn.md
│       │   │   │   │   ├── puya:docs:api-algopy.itxn.md
│       │   │   │   │   ├── puya:docs:api-algopy.md
│       │   │   │   │   ├── puya:docs:api-algopy.op.md
│       │   │   │   │   ├── puya:docs:api.md
│       │   │   │   │   ├── puya:docs:compiler.md
│       │   │   │   │   ├── puya:docs:index.md
│       │   │   │   │   ├── puya:docs:language-guide.md
│       │   │   │   │   ├── puya:docs:lg-arc28.md
│       │   │   │   │   ├── puya:docs:lg-arc4.md
│       │   │   │   │   ├── puya:docs:lg-builtins.md
│       │   │   │   │   ├── puya:docs:lg-calling-apps.md
│       │   │   │   │   ├── puya:docs:lg-compile.md
│       │   │   │   │   ├── puya:docs:lg-control.md
│       │   │   │   │   ├── puya:docs:lg-errors.md
│       │   │   │   │   ├── puya:docs:lg-logs.md
│       │   │   │   │   ├── puya:docs:lg-modules.md
│       │   │   │   │   ├── puya:docs:lg-opcode-budget.md
│       │   │   │   │   ├── puya:docs:lg-ops.md
│       │   │   │   │   ├── puya:docs:lg-storage.md
│       │   │   │   │   ├── puya:docs:lg-structure.md
│       │   │   │   │   ├── puya:docs:lg-transactions.md
│       │   │   │   │   ├── puya:docs:lg-types.md
│       │   │   │   │   ├── puya:docs:lg-unsupported-python-features.md
│       │   │   │   │   ├── puya:docs:principles.md
│       │   │   │   │   ├── puya:examples:auction:README.md
│       │   │   │   │   ├── puya:python:testing:docs:algopy.md
│       │   │   │   │   ├── puya:python:testing:docs:api.md
│       │   │   │   │   ├── puya:python:testing:docs:coverage.md
│       │   │   │   │   ├── puya:python:testing:docs:examples.md
│       │   │   │   │   ├── puya:python:testing:docs:faq.md
│       │   │   │   │   ├── puya:python:testing:docs:index.md
│       │   │   │   │   ├── puya:python:testing:docs:testing-guide:arc4-types.md
│       │   │   │   │   ├── puya:python:testing:docs:testing-guide:avm-types.md
│       │   │   │   │   ├── puya:python:testing:docs:testing-guide:concepts.md
│       │   │   │   │   ├── puya:python:testing:docs:testing-guide:contract-testing.md
│       │   │   │   │   ├── puya:python:testing:docs:testing-guide:index.md
│       │   │   │   │   ├── puya:python:testing:docs:testing-guide:opcodes.md
│       │   │   │   │   ├── puya:python:testing:docs:testing-guide:signature-testing.md
│       │   │   │   │   ├── puya:python:testing:docs:testing-guide:state-management.md
│       │   │   │   │   ├── puya:python:testing:docs:testing-guide:subroutines.md
│       │   │   │   │   ├── puya:python:testing:docs:testing-guide:transactions.md
│       │   │   │   │   ├── puya:python:testing:examples:README.md
│       │   │   │   │   ├── puya:python:testing:README.md
│       │   │   │   │   ├── puya:README.md
│       │   │   │   │   ├── puya:src:puya:ARCHITECTURE.md
│       │   │   │   │   ├── puya:src:puyapy:_typeshed:README.md
│       │   │   │   │   ├── puya:src:puyapy:_vendor:mypy:typeshed:stdlib:_typeshed:README.md
│       │   │   │   │   ├── puya:src:puyapy:awst_build:README.md
│       │   │   │   │   ├── puya:stubs:README.md
│       │   │   │   │   ├── puya:tests:test_expected_output:README.md
│       │   │   │   │   ├── puya:typescript:docs:architecture-decisions:2024-05-21_primitive-bytes-and-strings.md
│       │   │   │   │   ├── puya:typescript:docs:architecture-decisions:2024-05-21_primitive-integer-types.md
│       │   │   │   │   ├── puya:typescript:docs:README.md
│       │   │   │   │   ├── puya:typescript:packages:algo-ts:readme.md
│       │   │   │   │   ├── puya:typescript:README.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIAddressType.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIArrayDynamicType.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIArrayStaticType.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIBoolType.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIByteType.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIContract.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIInterface.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIMethod.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIStringType.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABITupleType.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIType.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIUfixedType.md
│       │   │   │   │   ├── SDKs:javascript:classes:ABIUintType.md
│       │   │   │   │   ├── SDKs:javascript:classes:Algodv2.md
│       │   │   │   │   ├── SDKs:javascript:classes:AtomicTransactionComposer.md
│       │   │   │   │   ├── SDKs:javascript:classes:DryrunResult.md
│       │   │   │   │   ├── SDKs:javascript:classes:Indexer.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.Account.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.AccountParticipation.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.AccountResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.AccountsResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.AccountStateDelta.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.Application.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.ApplicationLocalState.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.ApplicationLocalStatesResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.ApplicationLogData.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.ApplicationLogsResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.ApplicationParams.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.ApplicationResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.ApplicationsResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.ApplicationStateSchema.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.Asset.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.AssetBalancesResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.AssetHolding.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.AssetHoldingsResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.AssetParams.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.AssetResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.AssetsResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.Block.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.BlockRewards.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.BlockUpgradeState.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.BlockUpgradeVote.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.Box.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.BoxDescriptor.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.BoxesResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.ErrorResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.EvalDelta.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.EvalDeltaKeyValue.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.HashFactory.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.HealthCheck.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.IndexerStateProofMessage.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.MerkleArrayProof.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.MiniAssetHolding.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.ParticipationUpdates.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.StateProofFields.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.StateProofParticipant.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.StateProofReveal.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.StateProofSignature.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.StateProofSigSlot.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.StateProofTracking.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.StateProofVerifier.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.StateSchema.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TealKeyValue.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TealValue.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.Transaction.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionApplication.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionAssetConfig.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionAssetFreeze.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionAssetTransfer.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionKeyreg.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionPayment.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionSignature.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionSignatureLogicsig.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionSignatureMultisig.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionSignatureMultisigSubsignature.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionsResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:indexerModels.TransactionStateProof.md
│       │   │   │   │   ├── SDKs:javascript:classes:Kmd.md
│       │   │   │   │   ├── SDKs:javascript:classes:LogicSig.md
│       │   │   │   │   ├── SDKs:javascript:classes:LogicSigAccount.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.Account.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AccountApplicationResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AccountAssetHolding.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AccountAssetResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AccountAssetsInformationResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AccountParticipation.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AccountStateDelta.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AppCallLogs.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.Application.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.ApplicationInitialStates.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.ApplicationKVStorage.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.ApplicationLocalReference.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.ApplicationLocalState.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.ApplicationParams.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.ApplicationStateOperation.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.ApplicationStateSchema.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.Asset.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AssetHolding.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AssetHoldingReference.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AssetParams.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AvmKeyValue.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.AvmValue.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.BlockHashResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.BlockLogsResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.BlockResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.BlockTxidsResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.Box.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.BoxDescriptor.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.BoxesResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.BoxReference.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.BuildVersion.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.CompileResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.DisassembleResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.DryrunRequest.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.DryrunResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.DryrunSource.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.DryrunState.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.DryrunTxnResult.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.ErrorResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.EvalDelta.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.EvalDeltaKeyValue.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.GetBlockTimeStampOffsetResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.GetSyncRoundResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.KvDelta.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.LedgerStateDeltaForTransactionGroup.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.LightBlockHeaderProof.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.NodeStatusResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.PendingTransactionResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.PendingTransactionsResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.PostTransactionsResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.ScratchChange.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SimulateInitialStates.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SimulateRequest.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SimulateRequestTransactionGroup.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SimulateResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SimulateTraceConfig.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SimulateTransactionGroupResult.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SimulateTransactionResult.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SimulateUnnamedResourcesAccessed.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SimulationEvalOverrides.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SimulationOpcodeTraceUnit.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SimulationTransactionExecTrace.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.StateProof.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.StateProofMessage.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.SupplyResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.TealKeyValue.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.TealValue.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.TransactionGroupLedgerStateDeltasForRoundResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.TransactionParametersResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.TransactionProofResponse.md
│       │   │   │   │   ├── SDKs:javascript:classes:modelsv2.Version.md
│       │   │   │   │   ├── SDKs:javascript:classes:SourceMap.md
│       │   │   │   │   ├── SDKs:javascript:classes:Transaction.md
│       │   │   │   │   ├── SDKs:javascript:enums:ABIReferenceType.md
│       │   │   │   │   ├── SDKs:javascript:enums:ABITransactionType.md
│       │   │   │   │   ├── SDKs:javascript:enums:AtomicTransactionComposerStatus.md
│       │   │   │   │   ├── SDKs:javascript:enums:IntDecoding.md
│       │   │   │   │   ├── SDKs:javascript:enums:OnApplicationComplete.md
│       │   │   │   │   ├── SDKs:javascript:enums:TransactionType.md
│       │   │   │   │   ├── SDKs:javascript:examples:README.md
│       │   │   │   │   ├── SDKs:javascript:FAQ.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:ABIContractNetworkInfo.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:ABIContractNetworks.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:ABIContractParams.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:ABIInterfaceParams.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:ABIMethodArgParams.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:ABIMethodParams.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:ABIMethodReturnParams.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:ABIResult.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:Account.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:Address.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:AlgodTokenHeader.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:BaseHTTPClient.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:BaseHTTPClientError.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:BaseHTTPClientResponse.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:BoxReference.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:CustomTokenHeader.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:EncodedAssetParams.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:EncodedBoxReference.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:EncodedGlobalStateSchema.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:EncodedLocalStateSchema.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:EncodedLogicSig.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:EncodedLogicSigAccount.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:EncodedMultisig.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:EncodedSignedTransaction.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:EncodedSubsig.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:EncodedTransaction.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:IndexerTokenHeader.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:KMDTokenHeader.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:MultisigMetadata.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:SignedTransaction.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:SuggestedParams.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:TransactionParams.md
│       │   │   │   │   ├── SDKs:javascript:interfaces:TransactionWithSigner.md
│       │   │   │   │   ├── SDKs:javascript:modules:indexerModels.md
│       │   │   │   │   ├── SDKs:javascript:modules:modelsv2.md
│       │   │   │   │   ├── SDKs:javascript:modules.md
│       │   │   │   │   ├── SDKs:javascript:README.md
│       │   │   │   │   ├── SDKs:python:algosdk:v2client:harness:README.md
│       │   │   │   │   ├── SDKs:python:examples:README.md
│       │   │   │   │   ├── SDKs:python:README.md
│       │   │   │   │   ├── tealscript:examples_amm_README.md
│       │   │   │   │   ├── tealscript:examples_auction_README.md
│       │   │   │   │   ├── tealscript:examples_big_box_README.md
│       │   │   │   │   ├── tealscript:examples_itxns_README.md
│       │   │   │   │   ├── tealscript:examples_lsig_with_app_README.md
│       │   │   │   │   ├── tealscript:examples_reti_README.md
│       │   │   │   │   ├── tealscript:FEATURES.md
│       │   │   │   │   ├── tealscript:guides_atomic_txn.md
│       │   │   │   │   ├── tealscript:guides_features.md
│       │   │   │   │   ├── tealscript:guides_getting_started.md
│       │   │   │   │   ├── tealscript:guides_inner_transactions.md
│       │   │   │   │   ├── tealscript:guides_lifecycle.md
│       │   │   │   │   ├── tealscript:guides_math.md
│       │   │   │   │   ├── tealscript:guides_methods.md
│       │   │   │   │   ├── tealscript:guides_multiple_contracts.md
│       │   │   │   │   ├── tealscript:guides_pyteal.md
│       │   │   │   │   ├── tealscript:guides_storage.md
│       │   │   │   │   ├── tealscript:guides_Supported Types_arrays.md
│       │   │   │   │   ├── tealscript:guides_Supported Types_numbers.md
│       │   │   │   │   ├── TEALScript:README.md
│       │   │   │   │   ├── tealscript:tests_test_package_README.md
│       │   │   │   │   ├── tealscript:tutorials_Hello World_0001-intro.md
│       │   │   │   │   ├── tealscript:tutorials_Hello World_0002-init.md
│       │   │   │   │   ├── tealscript:tutorials_Hello World_0003-contract.md
│       │   │   │   │   ├── tealscript:tutorials_Hello World_0004-artifacts.md
│       │   │   │   │   ├── tealscript:tutorials_Hello World_0005-hello.md
│       │   │   │   │   └── tealscript:tutorials_Hello World_0006-test.md
│       │   │   │   └── taxonomy-categories
│       │   │   │       ├── algokit-utils.json
│       │   │   │       ├── algokit.json
│       │   │   │       ├── arcs.json
│       │   │   │       ├── clis.json
│       │   │   │       ├── details.json
│       │   │   │       ├── developers.json
│       │   │   │       ├── liquid-auth.json
│       │   │   │       ├── nodes.json
│       │   │   │       ├── puya.json
│       │   │   │       ├── python.json
│       │   │   │       ├── sdks.json
│       │   │   │       └── tealscript.json
│       │   │   └── wallet
│       │   │       └── index.ts
│       │   ├── tools
│       │   │   ├── accountManager.ts
│       │   │   ├── algodManager.ts
│       │   │   ├── apiManager
│       │   │   │   ├── algod
│       │   │   │   │   ├── account.ts
│       │   │   │   │   ├── application.ts
│       │   │   │   │   ├── asset.ts
│       │   │   │   │   ├── index.ts
│       │   │   │   │   └── transaction.ts
│       │   │   │   ├── example
│       │   │   │   │   ├── get-balance.ts
│       │   │   │   │   └── index.ts
│       │   │   │   ├── index.ts
│       │   │   │   ├── indexer
│       │   │   │   │   ├── account.ts
│       │   │   │   │   ├── application.ts
│       │   │   │   │   ├── asset.ts
│       │   │   │   │   ├── index.ts
│       │   │   │   │   └── transaction.ts
│       │   │   │   ├── nfd
│       │   │   │   │   └── index.ts
│       │   │   │   ├── tinyman
│       │   │   │   │   ├── analytics.ts
│       │   │   │   │   ├── bootstrap.ts
│       │   │   │   │   ├── index.ts
│       │   │   │   │   ├── liquidity.ts
│       │   │   │   │   ├── opt_in.ts
│       │   │   │   │   ├── pool.ts
│       │   │   │   │   ├── remove_liquidity.ts
│       │   │   │   │   └── swap.ts
│       │   │   │   ├── ultrade
│       │   │   │   │   ├── index.ts
│       │   │   │   │   ├── market.ts
│       │   │   │   │   ├── system.ts
│       │   │   │   │   └── wallet.ts
│       │   │   │   └── vestige
│       │   │   │       ├── assets.ts
│       │   │   │       ├── balances.ts
│       │   │   │       ├── index.ts
│       │   │   │       ├── networks.ts
│       │   │   │       ├── notes.ts
│       │   │   │       ├── pools.ts
│       │   │   │       ├── protocols.ts
│       │   │   │       ├── swaps.ts
│       │   │   │       └── vaults.ts
│       │   │   ├── arc26Manager.ts
│       │   │   ├── index.ts
│       │   │   ├── knowledgeManager.ts
│       │   │   ├── transactionManager
│       │   │   │   ├── accountTransactions.ts
│       │   │   │   ├── appTransactions
│       │   │   │   │   ├── callTxn.ts
│       │   │   │   │   ├── clearTxn.ts
│       │   │   │   │   ├── closeOutTxn.ts
│       │   │   │   │   ├── createTxn.ts
│       │   │   │   │   ├── deleteTxn.ts
│       │   │   │   │   ├── index.ts
│       │   │   │   │   ├── optInTxn.ts
│       │   │   │   │   ├── test
│       │   │   │   │   │   ├── counter_approval.teal
│       │   │   │   │   │   ├── counter_clear.teal
│       │   │   │   │   │   ├── storage_test_approval_v2.teal
│       │   │   │   │   │   ├── storage_test_approval.teal
│       │   │   │   │   │   └── storage_test_clear.teal
│       │   │   │   │   ├── types.ts
│       │   │   │   │   └── updateTxn.ts
│       │   │   │   ├── assetTransactions.ts
│       │   │   │   ├── generalTransaction.ts
│       │   │   │   └── index.ts
│       │   │   └── utilityManager.ts
│       │   ├── types.ts
│       │   └── utils
│       │       └── responseProcessor.ts
│       ├── tests
│       │   ├── resources
│       │   │   ├── algod
│       │   │   │   ├── account.test.ts
│       │   │   │   ├── application.test.ts
│       │   │   │   ├── asset.test.ts
│       │   │   │   └── transaction.test.ts
│       │   │   └── indexer
│       │   │       ├── account.test.ts
│       │   │       ├── application.test.ts
│       │   │       ├── asset.test.ts
│       │   │       └── transaction.test.ts
│       │   └── tools
│       │       ├── accountManager.test.ts
│       │       ├── algodManager.test.ts
│       │       ├── apiManager
│       │       │   └── example
│       │       │       └── get-balance.test.ts
│       │       ├── transactionManager
│       │       │   ├── accountTransactionManager.test.ts
│       │       │   ├── appTransactionManager.test.ts
│       │       │   ├── assetTransactionManager.test.ts
│       │       │   ├── generalTransactionManager.test.ts
│       │       │   └── transactionManager.test.ts
│       │       └── utilityManager.test.ts
│       └── tsconfig.json
├── README.md
├── rename_files.sh
└── tsconfig.json
```

# Files

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:modelsv2.BuildVersion.md:
--------------------------------------------------------------------------------

```markdown
  1 | [algosdk](../README.md) / [Exports](../modules.md) / [modelsv2](../modules/modelsv2.md) / BuildVersion
  2 | 
  3 | # Class: BuildVersion
  4 | 
  5 | [modelsv2](../modules/modelsv2.md).BuildVersion
  6 | 
  7 | ## Hierarchy
  8 | 
  9 | - `default`
 10 | 
 11 |   ↳ **`BuildVersion`**
 12 | 
 13 | ## Table of contents
 14 | 
 15 | ### Constructors
 16 | 
 17 | - [constructor](modelsv2.BuildVersion.md#constructor)
 18 | 
 19 | ### Properties
 20 | 
 21 | - [attribute\_map](modelsv2.BuildVersion.md#attribute_map)
 22 | - [branch](modelsv2.BuildVersion.md#branch)
 23 | - [buildNumber](modelsv2.BuildVersion.md#buildnumber)
 24 | - [channel](modelsv2.BuildVersion.md#channel)
 25 | - [commitHash](modelsv2.BuildVersion.md#commithash)
 26 | - [major](modelsv2.BuildVersion.md#major)
 27 | - [minor](modelsv2.BuildVersion.md#minor)
 28 | 
 29 | ### Methods
 30 | 
 31 | - [get\_obj\_for\_encoding](modelsv2.BuildVersion.md#get_obj_for_encoding)
 32 | - [from\_obj\_for\_encoding](modelsv2.BuildVersion.md#from_obj_for_encoding)
 33 | 
 34 | ## Constructors
 35 | 
 36 | ### constructor
 37 | 
 38 | • **new BuildVersion**(`«destructured»`)
 39 | 
 40 | Creates a new `BuildVersion` object.
 41 | 
 42 | #### Parameters
 43 | 
 44 | | Name | Type |
 45 | | :------ | :------ |
 46 | | `«destructured»` | `Object` |
 47 | | › `branch` | `string` |
 48 | | › `buildNumber` | `number` \| `bigint` |
 49 | | › `channel` | `string` |
 50 | | › `commitHash` | `string` |
 51 | | › `major` | `number` \| `bigint` |
 52 | | › `minor` | `number` \| `bigint` |
 53 | 
 54 | #### Overrides
 55 | 
 56 | BaseModel.constructor
 57 | 
 58 | #### Defined in
 59 | 
 60 | client/v2/algod/models/types.ts:2443
 61 | 
 62 | ## Properties
 63 | 
 64 | ### attribute\_map
 65 | 
 66 | • **attribute\_map**: `Record`\<`string`, `string`\>
 67 | 
 68 | #### Inherited from
 69 | 
 70 | BaseModel.attribute\_map
 71 | 
 72 | #### Defined in
 73 | 
 74 | client/v2/basemodel.ts:56
 75 | 
 76 | ___
 77 | 
 78 | ### branch
 79 | 
 80 | • **branch**: `string`
 81 | 
 82 | #### Defined in
 83 | 
 84 | client/v2/algod/models/types.ts:2422
 85 | 
 86 | ___
 87 | 
 88 | ### buildNumber
 89 | 
 90 | • **buildNumber**: `number` \| `bigint`
 91 | 
 92 | #### Defined in
 93 | 
 94 | client/v2/algod/models/types.ts:2424
 95 | 
 96 | ___
 97 | 
 98 | ### channel
 99 | 
100 | • **channel**: `string`
101 | 
102 | #### Defined in
103 | 
104 | client/v2/algod/models/types.ts:2426
105 | 
106 | ___
107 | 
108 | ### commitHash
109 | 
110 | • **commitHash**: `string`
111 | 
112 | #### Defined in
113 | 
114 | client/v2/algod/models/types.ts:2428
115 | 
116 | ___
117 | 
118 | ### major
119 | 
120 | • **major**: `number` \| `bigint`
121 | 
122 | #### Defined in
123 | 
124 | client/v2/algod/models/types.ts:2430
125 | 
126 | ___
127 | 
128 | ### minor
129 | 
130 | • **minor**: `number` \| `bigint`
131 | 
132 | #### Defined in
133 | 
134 | client/v2/algod/models/types.ts:2432
135 | 
136 | ## Methods
137 | 
138 | ### get\_obj\_for\_encoding
139 | 
140 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
141 | 
142 | Get an object ready for encoding to either JSON or msgpack.
143 | 
144 | #### Parameters
145 | 
146 | | Name | Type | Default value | Description |
147 | | :------ | :------ | :------ | :------ |
148 | | `binary` | `boolean` | `false` | Use true to indicate that the encoding can handle raw binary objects (Uint8Arrays). Use false to indicate that raw binary objects should be converted to base64 strings. True should be used for objects that will be encoded with msgpack, and false should be used for objects that will be encoded with JSON. |
149 | 
150 | #### Returns
151 | 
152 | `Record`\<`string`, `any`\>
153 | 
154 | #### Inherited from
155 | 
156 | BaseModel.get\_obj\_for\_encoding
157 | 
158 | #### Defined in
159 | 
160 | client/v2/basemodel.ts:65
161 | 
162 | ___
163 | 
164 | ### from\_obj\_for\_encoding
165 | 
166 | ▸ `Static` **from_obj_for_encoding**(`data`): [`BuildVersion`](modelsv2.BuildVersion.md)
167 | 
168 | #### Parameters
169 | 
170 | | Name | Type |
171 | | :------ | :------ |
172 | | `data` | `Record`\<`string`, `any`\> |
173 | 
174 | #### Returns
175 | 
176 | [`BuildVersion`](modelsv2.BuildVersion.md)
177 | 
178 | #### Defined in
179 | 
180 | client/v2/algod/models/types.ts:2477
181 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/ARCs:specs:arc-0009.md:
--------------------------------------------------------------------------------

```markdown
 1 | ---
 2 | arc: 9
 3 | title: Algorand Wallet Algodv2 and Indexer API
 4 | description: An API for accessing Algod and Indexer through a user's preferred connection.
 5 | author: DanBurton (@DanBurton)
 6 | discussions-to: https://github.com/algorandfoundation/ARCs/issues/52
 7 | status: Deprecated
 8 | type: Standards Track
 9 | category: Interface
10 | created: 2021-08-09
11 | ---
12 | 
13 | # Algorand Wallet Algodv2 and Indexer API
14 | 
15 | ## Abstract
16 | 
17 | Functions `getAlgodv2Client` and `getIndexerClient` which return a `BaseHTTPClient` that can be used to construct an `Algodv2Client` and an `IndexerClient` respectively (from the <a href="https://github.com/algorand/js-algorand-sdk/blob/develop/src/client/baseHTTPClient.ts">JS SDK</a>);
18 | 
19 | ## Specification
20 | 
21 | ### Interface `GetAlgodv2ClientFunction`
22 | 
23 | ```ts
24 | type GetAlgodv2ClientFunction = () => Promise<BaseHTTPClient>
25 | ```
26 | 
27 | Returns a promised `BaseHTTPClient` that can be used to then build an `Algodv2Client`, where `BaseHTTPClient` is an interface matching the interface `algosdk.BaseHTTPClient` from the <a href="https://github.com/algorand/js-algorand-sdk/blob/develop/src/client/baseHTTPClient.ts">JS SDK</a>).
28 | 
29 | ### Interface `GetIndexerClientFunction`
30 | 
31 | ```ts
32 | type GetIndexerClientFunction = () => Promise<BaseHTTPClient>
33 | ```
34 | 
35 | Returns a promised `BaseHTTPClient` that can be used to then build an `Indexer`, where `BaseHTTPClient` is an interface matching the interface `algosdk.BaseHTTPClient` from the <a href="https://github.com/algorand/js-algorand-sdk/blob/develop/src/client/baseHTTPClient.ts">JS SDK</a>).
36 | 
37 | ### Security considerations
38 | 
39 | The returned `BaseHTTPClient` **SHOULD** filter the queries made to prevent potential attacks and reject (i.e., throw an exception) if this is not satisfied.
40 | A non-exhaustive list of checks is provided below:
41 | * Check that the relative PATH does not contain `..`.
42 | * Check that the only provided headers are the ones used by the SDK (when this ARC was written: `accept` and `content-type`) and their values are the ones provided by the SDK.
43 | 
44 | `BaseHTTPClient` **MAY** impose rate limits.
45 | 
46 | For higher security, `BaseHTTPClient` **MAY** also check the queries with regards to the OpenAPI specification of the node and the indexer.
47 | 
48 | In case the wallet uses an API service that is secret or provided by the user, the wallet **MUST** ensure that the URL of the service and the potential tokens/headers are not leaked to the dApp.
49 | 
50 | > Leakage may happen by accidentally including too much information in responses or errors returned by the various methods. For example, if the nodeJS superagent library is used without filtering errors and responses, errors and responses may include the request object, which includes the potentially secret API service URL / secret token headers.
51 | 
52 | ## Rationale
53 | 
54 | Nontrivial dApps often require the ability to query the network for activity. Algorand dApps written without regard to wallets are likely written using `Algodv2` and `Indexer` from `algosdk`.
55 | This document allows dApps to instantiate `Algodv2` and `Indexer` for a wallet API service, making it easy for JavaScript dApp authors to port their code to work with wallets.
56 | 
57 | ## Security Considerations
58 | 
59 | None.
60 | 
61 | ## Copyright
62 | 
63 | Copyright and related rights waived via <a href="https://creativecommons.org/publicdomain/zero/1.0/">CCO</a>.
64 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/algokit:utils:typescript:code:interfaces:types_algorand_client_interface.AlgorandClientInterface.md:
--------------------------------------------------------------------------------

```markdown
  1 | [@algorandfoundation/algokit-utils](../README.md) / [types/algorand-client-interface](../modules/types_algorand_client_interface.md) / AlgorandClientInterface
  2 | 
  3 | # Interface: AlgorandClientInterface
  4 | 
  5 | [types/algorand-client-interface](../modules/types_algorand_client_interface.md).AlgorandClientInterface
  6 | 
  7 | Interface for the bulk of the `AlgorandClient` functionality.
  8 | 
  9 | Used to take a dependency on AlgorandClient without generating a circular dependency.
 10 | 
 11 | ## Implemented by
 12 | 
 13 | - [`AlgorandClient`](../classes/types_algorand_client.AlgorandClient.md)
 14 | 
 15 | ## Table of contents
 16 | 
 17 | ### Properties
 18 | 
 19 | - [app](types_algorand_client_interface.AlgorandClientInterface.md#app)
 20 | - [appDeployer](types_algorand_client_interface.AlgorandClientInterface.md#appdeployer)
 21 | - [client](types_algorand_client_interface.AlgorandClientInterface.md#client)
 22 | - [createTransaction](types_algorand_client_interface.AlgorandClientInterface.md#createtransaction)
 23 | - [send](types_algorand_client_interface.AlgorandClientInterface.md#send)
 24 | 
 25 | ### Methods
 26 | 
 27 | - [newGroup](types_algorand_client_interface.AlgorandClientInterface.md#newgroup)
 28 | 
 29 | ## Properties
 30 | 
 31 | ### app
 32 | 
 33 | • **app**: [`AppManager`](../classes/types_app_manager.AppManager.md)
 34 | 
 35 | #### Defined in
 36 | 
 37 | [src/types/algorand-client-interface.ts:16](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-interface.ts#L16)
 38 | 
 39 | ___
 40 | 
 41 | ### appDeployer
 42 | 
 43 | • **appDeployer**: [`AppDeployer`](../classes/types_app_deployer.AppDeployer.md)
 44 | 
 45 | #### Defined in
 46 | 
 47 | [src/types/algorand-client-interface.ts:17](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-interface.ts#L17)
 48 | 
 49 | ___
 50 | 
 51 | ### client
 52 | 
 53 | • **client**: `Object`
 54 | 
 55 | #### Type declaration
 56 | 
 57 | | Name | Type |
 58 | | :------ | :------ |
 59 | | `algod` | `AlgodClient` |
 60 | | `indexer?` | `IndexerClient` |
 61 | | `isLocalNet` | () => `Promise`\<`boolean`\> |
 62 | | `isMainNet` | () => `Promise`\<`boolean`\> |
 63 | | `isTestNet` | () => `Promise`\<`boolean`\> |
 64 | | `network` | () => `Promise`\<[`NetworkDetails`](types_network_client.NetworkDetails.md)\> |
 65 | 
 66 | #### Defined in
 67 | 
 68 | [src/types/algorand-client-interface.ts:21](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-interface.ts#L21)
 69 | 
 70 | ___
 71 | 
 72 | ### createTransaction
 73 | 
 74 | • **createTransaction**: [`AlgorandClientTransactionCreator`](../classes/types_algorand_client_transaction_creator.AlgorandClientTransactionCreator.md)
 75 | 
 76 | #### Defined in
 77 | 
 78 | [src/types/algorand-client-interface.ts:19](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-interface.ts#L19)
 79 | 
 80 | ___
 81 | 
 82 | ### send
 83 | 
 84 | • **send**: [`AlgorandClientTransactionSender`](../classes/types_algorand_client_transaction_sender.AlgorandClientTransactionSender.md)
 85 | 
 86 | #### Defined in
 87 | 
 88 | [src/types/algorand-client-interface.ts:18](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-interface.ts#L18)
 89 | 
 90 | ## Methods
 91 | 
 92 | ### newGroup
 93 | 
 94 | ▸ **newGroup**(): [`TransactionComposer`](../classes/types_composer.TransactionComposer.md)
 95 | 
 96 | #### Returns
 97 | 
 98 | [`TransactionComposer`](../classes/types_composer.TransactionComposer.md)
 99 | 
100 | #### Defined in
101 | 
102 | [src/types/algorand-client-interface.ts:20](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-interface.ts#L20)
103 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:indexerModels.TransactionAssetConfig.md:
--------------------------------------------------------------------------------

```markdown
  1 | [algosdk](../README.md) / [Exports](../modules.md) / [indexerModels](../modules/indexerModels.md) / TransactionAssetConfig
  2 | 
  3 | # Class: TransactionAssetConfig
  4 | 
  5 | [indexerModels](../modules/indexerModels.md).TransactionAssetConfig
  6 | 
  7 | Fields for asset allocation, re-configuration, and destruction.
  8 | A zero value for asset-id indicates asset creation.
  9 | A zero value for the params indicates asset destruction.
 10 | Definition:
 11 | data/transactions/asset.go : AssetConfigTxnFields
 12 | 
 13 | ## Hierarchy
 14 | 
 15 | - `default`
 16 | 
 17 |   ↳ **`TransactionAssetConfig`**
 18 | 
 19 | ## Table of contents
 20 | 
 21 | ### Constructors
 22 | 
 23 | - [constructor](indexerModels.TransactionAssetConfig.md#constructor)
 24 | 
 25 | ### Properties
 26 | 
 27 | - [assetId](indexerModels.TransactionAssetConfig.md#assetid)
 28 | - [attribute\_map](indexerModels.TransactionAssetConfig.md#attribute_map)
 29 | - [params](indexerModels.TransactionAssetConfig.md#params)
 30 | 
 31 | ### Methods
 32 | 
 33 | - [get\_obj\_for\_encoding](indexerModels.TransactionAssetConfig.md#get_obj_for_encoding)
 34 | - [from\_obj\_for\_encoding](indexerModels.TransactionAssetConfig.md#from_obj_for_encoding)
 35 | 
 36 | ## Constructors
 37 | 
 38 | ### constructor
 39 | 
 40 | • **new TransactionAssetConfig**(`«destructured»`)
 41 | 
 42 | Creates a new `TransactionAssetConfig` object.
 43 | 
 44 | #### Parameters
 45 | 
 46 | | Name | Type |
 47 | | :------ | :------ |
 48 | | `«destructured»` | `Object` |
 49 | | › `assetId?` | `number` \| `bigint` |
 50 | | › `params?` | [`AssetParams`](indexerModels.AssetParams.md) |
 51 | 
 52 | #### Overrides
 53 | 
 54 | BaseModel.constructor
 55 | 
 56 | #### Defined in
 57 | 
 58 | client/v2/indexer/models/types.ts:4883
 59 | 
 60 | ## Properties
 61 | 
 62 | ### assetId
 63 | 
 64 | • `Optional` **assetId**: `number` \| `bigint`
 65 | 
 66 | (xaid) ID of the asset being configured or empty if creating.
 67 | 
 68 | #### Defined in
 69 | 
 70 | client/v2/indexer/models/types.ts:4865
 71 | 
 72 | ___
 73 | 
 74 | ### attribute\_map
 75 | 
 76 | • **attribute\_map**: `Record`\<`string`, `string`\>
 77 | 
 78 | #### Inherited from
 79 | 
 80 | BaseModel.attribute\_map
 81 | 
 82 | #### Defined in
 83 | 
 84 | client/v2/basemodel.ts:56
 85 | 
 86 | ___
 87 | 
 88 | ### params
 89 | 
 90 | • `Optional` **params**: [`AssetParams`](indexerModels.AssetParams.md)
 91 | 
 92 | AssetParams specifies the parameters for an asset.
 93 | (apar) when part of an AssetConfig transaction.
 94 | Definition:
 95 | data/transactions/asset.go : AssetParams
 96 | 
 97 | #### Defined in
 98 | 
 99 | client/v2/indexer/models/types.ts:4873
100 | 
101 | ## Methods
102 | 
103 | ### get\_obj\_for\_encoding
104 | 
105 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
106 | 
107 | Get an object ready for encoding to either JSON or msgpack.
108 | 
109 | #### Parameters
110 | 
111 | | Name | Type | Default value | Description |
112 | | :------ | :------ | :------ | :------ |
113 | | `binary` | `boolean` | `false` | Use true to indicate that the encoding can handle raw binary objects (Uint8Arrays). Use false to indicate that raw binary objects should be converted to base64 strings. True should be used for objects that will be encoded with msgpack, and false should be used for objects that will be encoded with JSON. |
114 | 
115 | #### Returns
116 | 
117 | `Record`\<`string`, `any`\>
118 | 
119 | #### Inherited from
120 | 
121 | BaseModel.get\_obj\_for\_encoding
122 | 
123 | #### Defined in
124 | 
125 | client/v2/basemodel.ts:65
126 | 
127 | ___
128 | 
129 | ### from\_obj\_for\_encoding
130 | 
131 | ▸ `Static` **from_obj_for_encoding**(`data`): [`TransactionAssetConfig`](indexerModels.TransactionAssetConfig.md)
132 | 
133 | #### Parameters
134 | 
135 | | Name | Type |
136 | | :------ | :------ |
137 | | `data` | `Record`\<`string`, `any`\> |
138 | 
139 | #### Returns
140 | 
141 | [`TransactionAssetConfig`](indexerModels.TransactionAssetConfig.md)
142 | 
143 | #### Defined in
144 | 
145 | client/v2/indexer/models/types.ts:4901
146 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/puya:docs:lg-compile.md:
--------------------------------------------------------------------------------

```markdown
 1 | # Compiling to AVM bytecode
 2 | 
 3 | The PuyaPy compiler can compile Algorand Python smart contracts directly into AVM bytecode. 
 4 | Once compiled, this bytecode can be utilized to construct AVM Application Call transactions both on and off chain.
 5 | 
 6 | ## Outputting AVM bytecode from CLI
 7 | 
 8 | The `--output-bytecode` option can be used to generate `.bin` files for smart contracts and logic signatures, producing an approval and clear program for each smart contract.
 9 | 
10 | ## Obtaining bytecode within other contracts
11 | 
12 | The [`compile_contract`](#algopy.compile_contract) function takes an Algorand Python smart contract class and returns a [`CompiledContract`](#algopy.CompiledContract),
13 | The global state, local state and program pages allocation parameters are derived from the contract by default, but can be overridden.
14 | This compiled contract can then be used to create an [`algopy.itxn.ApplicationCall`](#algopy.itxn.ApplicationCall) transaction or used with the [ARC4](#arc4-contracts) functions.  
15 | 
16 | The [`compile_logicsig`](#algopy.compile_logicsig) takes an Algorand Python logic signature and returns a [`CompiledLogicSig`](#algopy.CompiledLogicSig), which can be used to
17 | verify if a transaction has been signed by a particular logic signature.
18 | 
19 | ## Template variables
20 | Algorand Python supports defining [`algopy.TemplateVar`](#algopy.TemplateVar) variables that can be substituted during compilation.
21 | 
22 | For example, the following contract has `UInt64` and `Bytes` template variables.
23 | ```{code-block} python
24 | :caption: templated_contract.py
25 | from algopy import ARC4Contract, Bytes, TemplateVar, UInt64, arc4
26 | 
27 | 
28 | class TemplatedContract(ARC4Contract):
29 | 
30 |     @arc4.abimethod
31 |     def my_method(self) -> UInt64:
32 |         return TemplateVar[UInt64]("SOME_UINT")
33 | 
34 |     @arc4.abimethod
35 |     def my_other_method(self) -> Bytes:
36 |         return TemplateVar[Bytes]("SOME_BYTES")
37 | ```
38 | 
39 | When compiling to bytecode, the values for these template variables must be provided. These values can be provided via the CLI, 
40 | or through the `template_vars` parameter of the [`compile_contract`](#algopy.compile_contract) and [`compile_logicsig`](#algopy.compile_logicsig) functions.
41 | 
42 | ### CLI
43 | 
44 | The `--template-var` option can be used to [define](compiler.md#defining-template-values) each variable.
45 | 
46 | For example to provide the values for the above example contract the following command could be used
47 | `puyapy --template-var SOME_UINT=123 --template-var SOME_BYTES=0xABCD templated_contract.py`
48 | 
49 | ### Within other contracts
50 | 
51 | The functions [`compile_contract`](#algopy.compile_contract) and [`compile_logicsig`](#algopy.compile_logicsig) both have an optional `template_vars` parameter
52 | which can be used to define template variables. Variables defined in this manner take priority over variables defined on the CLI.
53 | 
54 | ```python
55 | from algopy import Bytes, UInt64, arc4, compile_contract, subroutine
56 | 
57 | from templated_contract import TemplatedContract
58 | 
59 | @subroutine
60 | def create_templated_contract() -> None:
61 |     compiled = compile_contract(
62 |         TemplatedContract,
63 |         global_uints=2, # customize allocated global uints
64 |         template_vars={ # provide template vars
65 |             "SOME_UINT": UInt64(123),
66 |             "SOME_BYTES": Bytes(b"\xAB\xCD")
67 |         },
68 |     )
69 |     arc4.arc4_create(TemplatedContract, compiled=compiled)
70 | ```
71 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:modelsv2.PendingTransactionsResponse.md:
--------------------------------------------------------------------------------

```markdown
  1 | [algosdk](../README.md) / [Exports](../modules.md) / [modelsv2](../modules/modelsv2.md) / PendingTransactionsResponse
  2 | 
  3 | # Class: PendingTransactionsResponse
  4 | 
  5 | [modelsv2](../modules/modelsv2.md).PendingTransactionsResponse
  6 | 
  7 | A potentially truncated list of transactions currently in the node's transaction
  8 | pool. You can compute whether or not the list is truncated if the number of
  9 | elements in the **top-transactions** array is fewer than **total-transactions**.
 10 | 
 11 | ## Hierarchy
 12 | 
 13 | - `default`
 14 | 
 15 |   ↳ **`PendingTransactionsResponse`**
 16 | 
 17 | ## Table of contents
 18 | 
 19 | ### Constructors
 20 | 
 21 | - [constructor](modelsv2.PendingTransactionsResponse.md#constructor)
 22 | 
 23 | ### Properties
 24 | 
 25 | - [attribute\_map](modelsv2.PendingTransactionsResponse.md#attribute_map)
 26 | - [topTransactions](modelsv2.PendingTransactionsResponse.md#toptransactions)
 27 | - [totalTransactions](modelsv2.PendingTransactionsResponse.md#totaltransactions)
 28 | 
 29 | ### Methods
 30 | 
 31 | - [get\_obj\_for\_encoding](modelsv2.PendingTransactionsResponse.md#get_obj_for_encoding)
 32 | - [from\_obj\_for\_encoding](modelsv2.PendingTransactionsResponse.md#from_obj_for_encoding)
 33 | 
 34 | ## Constructors
 35 | 
 36 | ### constructor
 37 | 
 38 | • **new PendingTransactionsResponse**(`«destructured»`)
 39 | 
 40 | Creates a new `PendingTransactionsResponse` object.
 41 | 
 42 | #### Parameters
 43 | 
 44 | | Name | Type |
 45 | | :------ | :------ |
 46 | | `«destructured»` | `Object` |
 47 | | › `topTransactions` | [`EncodedSignedTransaction`](../interfaces/EncodedSignedTransaction.md)[] |
 48 | | › `totalTransactions` | `number` \| `bigint` |
 49 | 
 50 | #### Overrides
 51 | 
 52 | BaseModel.constructor
 53 | 
 54 | #### Defined in
 55 | 
 56 | client/v2/algod/models/types.ts:4080
 57 | 
 58 | ## Properties
 59 | 
 60 | ### attribute\_map
 61 | 
 62 | • **attribute\_map**: `Record`\<`string`, `string`\>
 63 | 
 64 | #### Inherited from
 65 | 
 66 | BaseModel.attribute\_map
 67 | 
 68 | #### Defined in
 69 | 
 70 | client/v2/basemodel.ts:56
 71 | 
 72 | ___
 73 | 
 74 | ### topTransactions
 75 | 
 76 | • **topTransactions**: [`EncodedSignedTransaction`](../interfaces/EncodedSignedTransaction.md)[]
 77 | 
 78 | An array of signed transaction objects.
 79 | 
 80 | #### Defined in
 81 | 
 82 | client/v2/algod/models/types.ts:4068
 83 | 
 84 | ___
 85 | 
 86 | ### totalTransactions
 87 | 
 88 | • **totalTransactions**: `number` \| `bigint`
 89 | 
 90 | Total number of transactions in the pool.
 91 | 
 92 | #### Defined in
 93 | 
 94 | client/v2/algod/models/types.ts:4073
 95 | 
 96 | ## Methods
 97 | 
 98 | ### get\_obj\_for\_encoding
 99 | 
100 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
101 | 
102 | Get an object ready for encoding to either JSON or msgpack.
103 | 
104 | #### Parameters
105 | 
106 | | Name | Type | Default value | Description |
107 | | :------ | :------ | :------ | :------ |
108 | | `binary` | `boolean` | `false` | Use true to indicate that the encoding can handle raw binary objects (Uint8Arrays). Use false to indicate that raw binary objects should be converted to base64 strings. True should be used for objects that will be encoded with msgpack, and false should be used for objects that will be encoded with JSON. |
109 | 
110 | #### Returns
111 | 
112 | `Record`\<`string`, `any`\>
113 | 
114 | #### Inherited from
115 | 
116 | BaseModel.get\_obj\_for\_encoding
117 | 
118 | #### Defined in
119 | 
120 | client/v2/basemodel.ts:65
121 | 
122 | ___
123 | 
124 | ### from\_obj\_for\_encoding
125 | 
126 | ▸ `Static` **from_obj_for_encoding**(`data`): [`PendingTransactionsResponse`](modelsv2.PendingTransactionsResponse.md)
127 | 
128 | #### Parameters
129 | 
130 | | Name | Type |
131 | | :------ | :------ |
132 | | `data` | `Record`\<`string`, `any`\> |
133 | 
134 | #### Returns
135 | 
136 | [`PendingTransactionsResponse`](modelsv2.PendingTransactionsResponse.md)
137 | 
138 | #### Defined in
139 | 
140 | client/v2/algod/models/types.ts:4098
141 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/puya:python:testing:docs:testing-guide:arc4-types.md:
--------------------------------------------------------------------------------

```markdown
 1 | # ARC4 Types
 2 | 
 3 | These types are available under the `algopy.arc4` namespace. Refer to the [ARC4 specification](https://arc.algorand.foundation/ARCs/arc-0004) for more details on the spec.
 4 | 
 5 | ```{hint}
 6 | Test context manager provides _value generators_ for ARC4 types. To access their _value generators_, use `{context_instance}.any.arc4` property. See more examples below.
 7 | ```
 8 | 
 9 | ```{note}
10 | For all `algopy.arc4` types with and without respective _value generator_, instantiation can be performed directly. If you have a suggestion for a new _value generator_ implementation, please open an issue in the [`algorand-python-testing`](https://github.com/algorandfoundation/algorand-python-testing) repository or contribute by following the [contribution guide](https://github.com/algorandfoundation/algorand-python-testing/blob/main/CONTRIBUTING.md).
11 | ```
12 | 
13 | ```{testsetup}
14 | import algopy
15 | from algopy_testing import algopy_testing_context
16 | 
17 | # Create the context manager for snippets below
18 | ctx_manager = algopy_testing_context()
19 | 
20 | # Enter the context
21 | context = ctx_manager.__enter__()
22 | ```
23 | 
24 | ## Unsigned Integers
25 | 
26 | ```{testcode}
27 | from algopy import arc4
28 | 
29 | # Integer types
30 | uint8_value = arc4.UInt8(255)
31 | uint16_value = arc4.UInt16(65535)
32 | uint32_value = arc4.UInt32(4294967295)
33 | uint64_value = arc4.UInt64(18446744073709551615)
34 | 
35 | ... # instantiate test context
36 | # Generate a random unsigned arc4 integer with default range
37 | uint8 = context.any.arc4.uint8()
38 | uint16 = context.any.arc4.uint16()
39 | uint32 = context.any.arc4.uint32()
40 | uint64 = context.any.arc4.uint64()
41 | biguint128 = context.any.arc4.biguint128()
42 | biguint256 = context.any.arc4.biguint256()
43 | biguint512 = context.any.arc4.biguint512()
44 | 
45 | # Generate a random unsigned arc4 integer with specified range
46 | uint8_custom = context.any.arc4.uint8(min_value=10, max_value=100)
47 | uint16_custom = context.any.arc4.uint16(min_value=1000, max_value=5000)
48 | uint32_custom = context.any.arc4.uint32(min_value=100000, max_value=1000000)
49 | uint64_custom = context.any.arc4.uint64(min_value=1000000000, max_value=10000000000)
50 | biguint128_custom = context.any.arc4.biguint128(min_value=1000000000000000, max_value=10000000000000000)
51 | biguint256_custom = context.any.arc4.biguint256(min_value=1000000000000000000000000, max_value=10000000000000000000000000)
52 | biguint512_custom = context.any.arc4.biguint512(min_value=10000000000000000000000000000000000, max_value=10000000000000000000000000000000000)
53 | ```
54 | 
55 | ## Address
56 | 
57 | ```{testcode}
58 | from algopy import arc4
59 | 
60 | # Address type
61 | address_value = arc4.Address("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY5HFKQ")
62 | 
63 | # Generate a random address
64 | random_address = context.any.arc4.address()
65 | 
66 | # Access native underlaying type
67 | native = random_address.native
68 | ```
69 | 
70 | ## Dynamic Bytes
71 | 
72 | ```{testcode}
73 | from algopy import arc4
74 | 
75 | # Dynamic byte string
76 | bytes_value = arc4.DynamicBytes(b"Hello, Algorand!")
77 | 
78 | # Generate random dynamic bytes
79 | random_dynamic_bytes = context.any.arc4.dynamic_bytes(n=123) # n is the number of bits in the arc4 dynamic bytes
80 | ```
81 | 
82 | ## String
83 | 
84 | ```{testcode}
85 | from algopy import arc4
86 | 
87 | # UTF-8 encoded string
88 | string_value = arc4.String("Hello, Algorand!")
89 | 
90 | # Generate random string
91 | random_string = context.any.arc4.string(n=12) # n is the number of bits in the arc4 string
92 | ```
93 | 
94 | ```{testcleanup}
95 | ctx_manager.__exit__(None, None, None)
96 | ```
97 | 
```

--------------------------------------------------------------------------------
/packages/server/src/tools/apiManager/tinyman/opt_in.ts:
--------------------------------------------------------------------------------

```typescript
  1 | import { Tool, ErrorCode, McpError } from '@modelcontextprotocol/sdk/types.js';
  2 | import { generateOptIntoAssetTxns, generateOptIntoValidatorTxns, generateOptOutOfValidatorTxns, SupportedNetwork } from '@tinymanorg/tinyman-js-sdk';
  3 | import { algodClient } from '../../../algorand-client.js';
  4 | import { env } from '../../../env.js';
  5 | 
  6 | export const optInTools: Tool[] = [
  7 |   {
  8 |     name: 'api_tinyman_get_asset_optin_quote',
  9 |     description: 'Get quote for opting into a Tinyman pool token',
 10 |     inputSchema: {
 11 |       type: 'object',
 12 |       properties: {
 13 |         assetId: {
 14 |           type: 'integer',
 15 |           description: 'ID of the pool token asset'
 16 |         },
 17 |         initiatorAddr: {
 18 |           type: 'string',
 19 |           description: 'Address of the account to opt in'
 20 |         }
 21 |       },
 22 |       required: ['assetId', 'initiatorAddr']
 23 |     }
 24 |   },
 25 |   {
 26 |     name: 'api_tinyman_get_validator_optin_quote',
 27 |     description: 'Get quote for opting into Tinyman validator app',
 28 |     inputSchema: {
 29 |       type: 'object',
 30 |       properties: {
 31 |         initiatorAddr: {
 32 |           type: 'string',
 33 |           description: 'Address of the account to opt in'
 34 |         },
 35 |         version: {
 36 |           type: 'string',
 37 |           enum: ['v1_1', 'v2'],
 38 |           description: 'Tinyman protocol version',
 39 |           default: 'v2'
 40 |         }
 41 |       },
 42 |       required: ['initiatorAddr']
 43 |     }
 44 |   },
 45 |   {
 46 |     name: 'api_tinyman_get_validator_optout_quote',
 47 |     description: 'Get quote for opting out of Tinyman validator app',
 48 |     inputSchema: {
 49 |       type: 'object',
 50 |       properties: {
 51 |         initiatorAddr: {
 52 |           type: 'string',
 53 |           description: 'Address of the account to opt out'
 54 |         },
 55 |         version: {
 56 |           type: 'string',
 57 |           enum: ['v1_1', 'v2'],
 58 |           description: 'Tinyman protocol version',
 59 |           default: 'v2'
 60 |         }
 61 |       },
 62 |       required: ['initiatorAddr']
 63 |     }
 64 |   }
 65 | ];
 66 | 
 67 | export async function handleOptInTools(args: any): Promise<any> {
 68 |   const { name, initiatorAddr, version = 'v2' } = args;
 69 | 
 70 |   try {
 71 |     let quote;
 72 |     
 73 |     if (name === 'api_tinyman_get_asset_optin_quote') {
 74 |       const { assetId } = args;
 75 |       quote = await generateOptIntoAssetTxns({
 76 |         client: algodClient,
 77 |         assetID: assetId,
 78 |         initiatorAddr
 79 |       });
 80 |     }
 81 |     else if (name === 'api_tinyman_get_validator_optin_quote') {
 82 |       quote = await generateOptIntoValidatorTxns({
 83 |         client: algodClient,
 84 |         network: env.algorand_network as SupportedNetwork,
 85 |         contractVersion: version,
 86 |         initiatorAddr
 87 |       });
 88 |     }
 89 |     else if (name === 'api_tinyman_get_validator_optout_quote') {
 90 |       quote = await generateOptOutOfValidatorTxns({
 91 |         client: algodClient,
 92 |         network: env.algorand_network as SupportedNetwork,
 93 |         contractVersion: version,
 94 |         initiatorAddr
 95 |       });
 96 |     }
 97 |     else {
 98 |       throw new McpError(
 99 |         ErrorCode.MethodNotFound,
100 |         `Unknown opt-in tool: ${name}`
101 |       );
102 |     }
103 | 
104 |     return {
105 |         version,
106 |         initiatorAddr,
107 |         transactionCount: quote.length,
108 |         estimatedFees: quote.reduce((sum, txn) => sum + txn.txn.fee, 0)
109 |       };
110 |   } catch (error) {
111 |     throw new McpError(
112 |       ErrorCode.InternalError,
113 |       `Failed to get opt-in/out quote: ${error instanceof Error ? error.message : String(error)}`
114 |     );
115 |   }
116 | }
117 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/puya:docs:lg-arc28.md:
--------------------------------------------------------------------------------

```markdown
 1 | # ARC-28: Structured event logging
 2 | 
 3 | [ARC-28](https://github.com/algorandfoundation/ARCs/blob/main/ARCs/arc-0028.md) provides a methodology for structured logging by Algorand smart contracts. It introduces the concept of Events, where data contained in logs may be categorized and structured.
 4 | 
 5 | Each Event is identified by a unique 4-byte identifier derived from its `Event Signature`. The Event Signature is a UTF-8 string comprised of the event's name, followed by the names of the [ARC-4](./lg-arc4.md) data types contained in the event, all enclosed in parentheses (`EventName(type1,type2,...)`) e.g.:
 6 | 
 7 | ```
 8 | Swapped(uint64,uint64)
 9 | ```
10 | 
11 | Events are emitting by including them in the [log output](./lg-logs.md). The metadata that identifies the event should then be included in the ARC-4 contract output so that a calling client can parse the logs to parse the structured data out. This part of the ARC-28 spec isn't yet implemented in Algorand Python, but it's on the roadmap.
12 | 
13 | ## Emitting Events
14 | 
15 | To emit an ARC-28 event in Algorand Python you can use the `emit` function, which appears in the `algopy.arc4` namespace for convenience since it heavily uses ARC-4 types and is essentially an extension of the ARC-4 specification. This function takes care of encoding the event payload to conform to the ARC-28 specification and there are 3 overloads:
16 | 
17 | -   An [ARC-4 struct](./lg-arc4.md), from what the name of the struct will be used as a the event name and the struct parameters will be used as the event fields - `arc4.emit(Swapped(a, b))`
18 | -   An event signature as a [string literal (or module variable)](./lg-types.md), followed by the values - `arc4.emit("Swapped(uint64,uint64)", a, b)`
19 | -   An event name as a [string literal (or module variable)](./lg-types.md), followed by the values - `arc4.emit("Swapped", a, b)`
20 | 
21 | Here's an example contract that emits events:
22 | 
23 | ```python
24 | from algopy import ARC4Contract, arc4
25 | 
26 | class Swapped(arc4.Struct):
27 |     a: arc4.UInt64
28 |     b: arc4.UInt64
29 | 
30 | class EventEmitter(ARC4Contract):
31 |     @arc4.abimethod
32 |     def emit_swapped(self, a: arc4.UInt64, b: arc4.UInt64) -> None:
33 |         arc4.emit(Swapped(b, a))
34 |         arc4.emit("Swapped(uint64,uint64)", b, a)
35 |         arc4.emit("Swapped", b, a)
36 | ```
37 | 
38 | It's worth noting that the ARC-28 event signature needs to be known at compile time so the event name can't be a dynamic type and must be a static string literal or string module constant. If you want to emit dynamic events you can do so using the [`log` method](./lg-logs.md), but you'd need to manually construct the correct series of bytes and the compiler won't be able to emit the ARC-28 metadata so you'll need to also manually parse the logs in your client.
39 | 
40 | Examples of manually constructing an event:
41 | 
42 | ```python
43 | # This is essentially what the `emit` method is doing, noting that a,b need to be encoded
44 | #   as a tuple so below (simple concat) only works for static ARC-4 types
45 | log(arc4.arc4_signature("Swapped(uint64,uint64)"), a, b)
46 | 
47 | # or, if you wanted it to be truly dynamic for some reason,
48 | #   (noting this has a non-trivial opcode cost) and assuming in this case
49 | #   that `event_suffix` is already defined as a `String`:
50 | event_name = String("Event") + event_suffix
51 | event_selector = op.sha512_256((event_name + "(uint64)").bytes)[:4]
52 | log(event_selector, UInt64(6))
53 | ```
54 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/puya:docs:lg-control.md:
--------------------------------------------------------------------------------

```markdown
 1 | # Control flow structures
 2 | 
 3 | Control flow in Algorand Python is similar to standard Python control flow, with support for if statements, while loops, for loops, and match statements.
 4 | 
 5 | ## If statements
 6 | 
 7 | If statements work the same as Python. The conditions must be an expression that evaluates to bool, which can include a [String or Uint64](./lg-types.md) among others.
 8 | 
 9 | ```python
10 | if condition:
11 |     # block of code to execute if condition is True
12 | elif condition2:
13 |     # block of code to execute if condition is False and condition2 is True
14 | else:
15 |     # block of code to execute if condition and condition2 are both False
16 | ```
17 | 
18 | [See full example](https://github.com/algorandfoundation/puya/blob/main/test_cases/simplish/contract.py).
19 | 
20 | ## Ternary conditions
21 | 
22 | Ternary conditions work the same as Python. The condition must be an expression that evaluates to bool, which can include a [String or Uint64](./lg-types.md) among others.
23 | 
24 | ```python
25 | value1 = UInt64(5)
26 | value2 = String(">6") if value1 > 6 else String("<=6")
27 | ```
28 | 
29 | ## While loops
30 | 
31 | While loops work the same as Python. The condition must be an expression that evaluates to bool, which can include a [String or Uint64](./lg-types.md) among others.
32 | 
33 | You can use `break` and `continue`.
34 | 
35 | ```python
36 | while condition:
37 |     # block of code to execute if condition is True
38 | ```
39 | 
40 | Note: we don't currently have support for while-else statements.
41 | 
42 | [See full example](https://github.com/algorandfoundation/puya/blob/main/test_cases/unssa/contract.py#L32-L83).
43 | 
44 | ## For Loops
45 | 
46 | For loops are used to iterate over sequences, ranges and [ARC-4 arrays](./lg-arc4.md). They work the same as Python.
47 | 
48 | Algorand Python provides functions like `uenumerate` and `urange` to facilitate creating sequences and ranges; in-built Python `reversed` method works with these.
49 | 
50 | -   `uenumerate` is similar to Python's built-in enumerate function, but for UInt64 numbers; it allows you to loop over a sequence and have an automatic counter.
51 | -   `urange` is a function that generates a sequence of Uint64 numbers, which you can iterate over.
52 | -   `reversed` returns a reversed iterator of a sequence.
53 | 
54 | Here is an example of how you can use these functions in a contract:
55 | 
56 | ```python
57 | test_array = arc4.StaticArray(arc4.UInt8(), arc4.UInt8(), arc4.UInt8(), arc4.UInt8())
58 | 
59 | # urange: reversed items, forward index
60 | 
61 | for index, item in uenumerate(reversed(urange(4))):
62 |     test_array[index] = arc4.UInt8(item)
63 | 
64 | assert test_array.bytes == Bytes.from_hex("03020100")
65 | ```
66 | 
67 | Note: we don't currently have support for for-else statements.
68 | 
69 | [See full](https://github.com/algorandfoundation/puya/blob/main/test_cases/reversed_iteration/contract.py) [examples](https://github.com/algorandfoundation/puya/blob/main/test_cases/nested_loops/contract.py).
70 | 
71 | ## Match Statements
72 | 
73 | Match statements work the same as Python and work for [...]
74 | 
75 | ```python
76 | match value:
77 |     case pattern1:
78 |         # block of code to execute if pattern1 matches
79 |     case pattern2:
80 |         # block of code to execute if pattern2 matches
81 |     case _:
82 |         # Fallback
83 | ```
84 | 
85 | Note: Captures and patterns are not supported. Currently, there is only support for basic case/switch functionality; pattern matching and guard clauses are not currently supported.
86 | 
87 | [See full example](https://github.com/algorandfoundation/puya/blob/main/test_cases/match/contract.py).
88 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/algokit:utils:typescript:code:classes:testing.TransactionLogger.md:
--------------------------------------------------------------------------------

```markdown
  1 | [@algorandfoundation/algokit-utils](../README.md) / [testing](../modules/testing.md) / TransactionLogger
  2 | 
  3 | # Class: TransactionLogger
  4 | 
  5 | [testing](../modules/testing.md).TransactionLogger
  6 | 
  7 | Allows you to keep track of Algorand transaction IDs by wrapping an `Algodv2` in a proxy.
  8 | Useful for automated tests.
  9 | 
 10 | ## Table of contents
 11 | 
 12 | ### Constructors
 13 | 
 14 | - [constructor](testing.TransactionLogger.md#constructor)
 15 | 
 16 | ### Properties
 17 | 
 18 | - [\_sentTransactionIds](testing.TransactionLogger.md#_senttransactionids)
 19 | 
 20 | ### Accessors
 21 | 
 22 | - [sentTransactionIds](testing.TransactionLogger.md#senttransactionids)
 23 | 
 24 | ### Methods
 25 | 
 26 | - [capture](testing.TransactionLogger.md#capture)
 27 | - [clear](testing.TransactionLogger.md#clear)
 28 | - [logRawTransaction](testing.TransactionLogger.md#lograwtransaction)
 29 | - [waitForIndexer](testing.TransactionLogger.md#waitforindexer)
 30 | 
 31 | ## Constructors
 32 | 
 33 | ### constructor
 34 | 
 35 | • **new TransactionLogger**(): [`TransactionLogger`](testing.TransactionLogger.md)
 36 | 
 37 | #### Returns
 38 | 
 39 | [`TransactionLogger`](testing.TransactionLogger.md)
 40 | 
 41 | ## Properties
 42 | 
 43 | ### \_sentTransactionIds
 44 | 
 45 | • `Private` **\_sentTransactionIds**: `string`[] = `[]`
 46 | 
 47 | #### Defined in
 48 | 
 49 | [src/testing/transaction-logger.ts:12](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/testing/transaction-logger.ts#L12)
 50 | 
 51 | ## Accessors
 52 | 
 53 | ### sentTransactionIds
 54 | 
 55 | • `get` **sentTransactionIds**(): readonly `string`[]
 56 | 
 57 | The list of transaction IDs that has been logged thus far.
 58 | 
 59 | #### Returns
 60 | 
 61 | readonly `string`[]
 62 | 
 63 | #### Defined in
 64 | 
 65 | [src/testing/transaction-logger.ts:17](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/testing/transaction-logger.ts#L17)
 66 | 
 67 | ## Methods
 68 | 
 69 | ### capture
 70 | 
 71 | ▸ **capture**(`algod`): `AlgodClient`
 72 | 
 73 | Return a proxy that wraps the given Algodv2 with this transaction logger.
 74 | 
 75 | #### Parameters
 76 | 
 77 | | Name | Type | Description |
 78 | | :------ | :------ | :------ |
 79 | | `algod` | `AlgodClient` | The `Algodv2` to wrap |
 80 | 
 81 | #### Returns
 82 | 
 83 | `AlgodClient`
 84 | 
 85 | The wrapped `Algodv2`, any transactions sent using this algod instance will be logged by this transaction logger
 86 | 
 87 | #### Defined in
 88 | 
 89 | [src/testing/transaction-logger.ts:48](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/testing/transaction-logger.ts#L48)
 90 | 
 91 | ___
 92 | 
 93 | ### clear
 94 | 
 95 | ▸ **clear**(): `void`
 96 | 
 97 | Clear all logged IDs.
 98 | 
 99 | #### Returns
100 | 
101 | `void`
102 | 
103 | #### Defined in
104 | 
105 | [src/testing/transaction-logger.ts:24](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/testing/transaction-logger.ts#L24)
106 | 
107 | ___
108 | 
109 | ### logRawTransaction
110 | 
111 | ▸ **logRawTransaction**(`signedTransactions`): `void`
112 | 
113 | The method that captures raw transactions and stores the transaction IDs.
114 | 
115 | #### Parameters
116 | 
117 | | Name | Type |
118 | | :------ | :------ |
119 | | `signedTransactions` | `Uint8Array` \| `Uint8Array`[] |
120 | 
121 | #### Returns
122 | 
123 | `void`
124 | 
125 | #### Defined in
126 | 
127 | [src/testing/transaction-logger.ts:31](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/testing/transaction-logger.ts#L31)
128 | 
129 | ___
130 | 
131 | ### waitForIndexer
132 | 
133 | ▸ **waitForIndexer**(`indexer`): `Promise`\<`void`\>
134 | 
135 | Wait until all logged transactions IDs appear in the given `Indexer`.
136 | 
137 | #### Parameters
138 | 
139 | | Name | Type |
140 | | :------ | :------ |
141 | | `indexer` | `IndexerClient` |
142 | 
143 | #### Returns
144 | 
145 | `Promise`\<`void`\>
146 | 
147 | #### Defined in
148 | 
149 | [src/testing/transaction-logger.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/testing/transaction-logger.ts#L53)
150 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/liquid-auth:sites:express-dapp:README.md:
--------------------------------------------------------------------------------

```markdown
 1 | <p align="center">
 2 |   <a href="http://nestjs.com/" target="blank"><img src="https://nestjs.com/img/logo-small.svg" width="200" alt="Nest Logo" /></a>
 3 | </p>
 4 | 
 5 | [circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456
 6 | [circleci-url]: https://circleci.com/gh/nestjs/nest
 7 | 
 8 |   <p align="center">A progressive <a href="http://nodejs.org" target="_blank">Node.js</a> framework for building efficient and scalable server-side applications.</p>
 9 |     <p align="center">
10 | <a href="https://www.npmjs.com/~nestjscore" target="_blank"><img src="https://img.shields.io/npm/v/@nestjs/core.svg" alt="NPM Version" /></a>
11 | <a href="https://www.npmjs.com/~nestjscore" target="_blank"><img src="https://img.shields.io/npm/l/@nestjs/core.svg" alt="Package License" /></a>
12 | <a href="https://www.npmjs.com/~nestjscore" target="_blank"><img src="https://img.shields.io/npm/dm/@nestjs/common.svg" alt="NPM Downloads" /></a>
13 | <a href="https://circleci.com/gh/nestjs/nest" target="_blank"><img src="https://img.shields.io/circleci/build/github/nestjs/nest/master" alt="CircleCI" /></a>
14 | <a href="https://coveralls.io/github/nestjs/nest?branch=master" target="_blank"><img src="https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9" alt="Coverage" /></a>
15 | <a href="https://discord.gg/G7Qnnhy" target="_blank"><img src="https://img.shields.io/badge/discord-online-brightgreen.svg" alt="Discord"/></a>
16 | <a href="https://opencollective.com/nest#backer" target="_blank"><img src="https://opencollective.com/nest/backers/badge.svg" alt="Backers on Open Collective" /></a>
17 | <a href="https://opencollective.com/nest#sponsor" target="_blank"><img src="https://opencollective.com/nest/sponsors/badge.svg" alt="Sponsors on Open Collective" /></a>
18 |   <a href="https://paypal.me/kamilmysliwiec" target="_blank"><img src="https://img.shields.io/badge/Donate-PayPal-ff3f59.svg"/></a>
19 |     <a href="https://opencollective.com/nest#sponsor"  target="_blank"><img src="https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg" alt="Support us"></a>
20 |   <a href="https://twitter.com/nestframework" target="_blank"><img src="https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow"></a>
21 | </p>
22 |   <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)
23 |   [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->
24 | 
25 | ## Description
26 | 
27 | [Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.
28 | 
29 | ## Installation
30 | 
31 | ```bash
32 | $ npm install
33 | ```
34 | 
35 | ## Running the app
36 | 
37 | ```bash
38 | # development
39 | $ npm run start
40 | 
41 | # watch mode
42 | $ npm run start:dev
43 | 
44 | # production mode
45 | $ npm run start:prod
46 | ```
47 | 
48 | ## Test
49 | 
50 | ```bash
51 | # unit tests
52 | $ npm run test
53 | 
54 | # e2e tests
55 | $ npm run test:e2e
56 | 
57 | # test coverage
58 | $ npm run test:cov
59 | ```
60 | 
61 | ## Support
62 | 
63 | Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please [read more here](https://docs.nestjs.com/support).
64 | 
65 | ## Stay in touch
66 | 
67 | - Author - [Kamil Myśliwiec](https://kamilmysliwiec.com)
68 | - Website - [https://nestjs.com](https://nestjs.com/)
69 | - Twitter - [@nestframework](https://twitter.com/nestframework)
70 | 
71 | ## License
72 | 
73 | Nest is [MIT licensed](LICENSE).
74 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:indexerModels.StateProofSignature.md:
--------------------------------------------------------------------------------

```markdown
  1 | [algosdk](../README.md) / [Exports](../modules.md) / [indexerModels](../modules/indexerModels.md) / StateProofSignature
  2 | 
  3 | # Class: StateProofSignature
  4 | 
  5 | [indexerModels](../modules/indexerModels.md).StateProofSignature
  6 | 
  7 | ## Hierarchy
  8 | 
  9 | - `default`
 10 | 
 11 |   ↳ **`StateProofSignature`**
 12 | 
 13 | ## Table of contents
 14 | 
 15 | ### Constructors
 16 | 
 17 | - [constructor](indexerModels.StateProofSignature.md#constructor)
 18 | 
 19 | ### Properties
 20 | 
 21 | - [attribute\_map](indexerModels.StateProofSignature.md#attribute_map)
 22 | - [falconSignature](indexerModels.StateProofSignature.md#falconsignature)
 23 | - [merkleArrayIndex](indexerModels.StateProofSignature.md#merklearrayindex)
 24 | - [proof](indexerModels.StateProofSignature.md#proof)
 25 | - [verifyingKey](indexerModels.StateProofSignature.md#verifyingkey)
 26 | 
 27 | ### Methods
 28 | 
 29 | - [get\_obj\_for\_encoding](indexerModels.StateProofSignature.md#get_obj_for_encoding)
 30 | - [from\_obj\_for\_encoding](indexerModels.StateProofSignature.md#from_obj_for_encoding)
 31 | 
 32 | ## Constructors
 33 | 
 34 | ### constructor
 35 | 
 36 | • **new StateProofSignature**(`«destructured»`)
 37 | 
 38 | Creates a new `StateProofSignature` object.
 39 | 
 40 | #### Parameters
 41 | 
 42 | | Name | Type |
 43 | | :------ | :------ |
 44 | | `«destructured»` | `Object` |
 45 | | › `falconSignature?` | `string` \| `Uint8Array` |
 46 | | › `merkleArrayIndex?` | `number` \| `bigint` |
 47 | | › `proof?` | [`MerkleArrayProof`](indexerModels.MerkleArrayProof.md) |
 48 | | › `verifyingKey?` | `string` \| `Uint8Array` |
 49 | 
 50 | #### Overrides
 51 | 
 52 | BaseModel.constructor
 53 | 
 54 | #### Defined in
 55 | 
 56 | client/v2/indexer/models/types.ts:3755
 57 | 
 58 | ## Properties
 59 | 
 60 | ### attribute\_map
 61 | 
 62 | • **attribute\_map**: `Record`\<`string`, `string`\>
 63 | 
 64 | #### Inherited from
 65 | 
 66 | BaseModel.attribute\_map
 67 | 
 68 | #### Defined in
 69 | 
 70 | client/v2/basemodel.ts:56
 71 | 
 72 | ___
 73 | 
 74 | ### falconSignature
 75 | 
 76 | • `Optional` **falconSignature**: `Uint8Array`
 77 | 
 78 | #### Defined in
 79 | 
 80 | client/v2/indexer/models/types.ts:3737
 81 | 
 82 | ___
 83 | 
 84 | ### merkleArrayIndex
 85 | 
 86 | • `Optional` **merkleArrayIndex**: `number` \| `bigint`
 87 | 
 88 | #### Defined in
 89 | 
 90 | client/v2/indexer/models/types.ts:3739
 91 | 
 92 | ___
 93 | 
 94 | ### proof
 95 | 
 96 | • `Optional` **proof**: [`MerkleArrayProof`](indexerModels.MerkleArrayProof.md)
 97 | 
 98 | #### Defined in
 99 | 
100 | client/v2/indexer/models/types.ts:3741
101 | 
102 | ___
103 | 
104 | ### verifyingKey
105 | 
106 | • `Optional` **verifyingKey**: `Uint8Array`
107 | 
108 | (vkey)
109 | 
110 | #### Defined in
111 | 
112 | client/v2/indexer/models/types.ts:3746
113 | 
114 | ## Methods
115 | 
116 | ### get\_obj\_for\_encoding
117 | 
118 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
119 | 
120 | Get an object ready for encoding to either JSON or msgpack.
121 | 
122 | #### Parameters
123 | 
124 | | Name | Type | Default value | Description |
125 | | :------ | :------ | :------ | :------ |
126 | | `binary` | `boolean` | `false` | Use true to indicate that the encoding can handle raw binary objects (Uint8Arrays). Use false to indicate that raw binary objects should be converted to base64 strings. True should be used for objects that will be encoded with msgpack, and false should be used for objects that will be encoded with JSON. |
127 | 
128 | #### Returns
129 | 
130 | `Record`\<`string`, `any`\>
131 | 
132 | #### Inherited from
133 | 
134 | BaseModel.get\_obj\_for\_encoding
135 | 
136 | #### Defined in
137 | 
138 | client/v2/basemodel.ts:65
139 | 
140 | ___
141 | 
142 | ### from\_obj\_for\_encoding
143 | 
144 | ▸ `Static` **from_obj_for_encoding**(`data`): [`StateProofSignature`](indexerModels.StateProofSignature.md)
145 | 
146 | #### Parameters
147 | 
148 | | Name | Type |
149 | | :------ | :------ |
150 | | `data` | `Record`\<`string`, `any`\> |
151 | 
152 | #### Returns
153 | 
154 | [`StateProofSignature`](indexerModels.StateProofSignature.md)
155 | 
156 | #### Defined in
157 | 
158 | client/v2/indexer/models/types.ts:3787
159 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/algokit:utils:typescript:code:interfaces:types_app_client.AppClientParams.md:
--------------------------------------------------------------------------------

```markdown
  1 | [@algorandfoundation/algokit-utils](../README.md) / [types/app-client](../modules/types_app_client.md) / AppClientParams
  2 | 
  3 | # Interface: AppClientParams
  4 | 
  5 | [types/app-client](../modules/types_app_client.md).AppClientParams
  6 | 
  7 | Parameters to create an app client
  8 | 
  9 | ## Table of contents
 10 | 
 11 | ### Properties
 12 | 
 13 | - [algorand](types_app_client.AppClientParams.md#algorand)
 14 | - [appId](types_app_client.AppClientParams.md#appid)
 15 | - [appName](types_app_client.AppClientParams.md#appname)
 16 | - [appSpec](types_app_client.AppClientParams.md#appspec)
 17 | - [approvalSourceMap](types_app_client.AppClientParams.md#approvalsourcemap)
 18 | - [clearSourceMap](types_app_client.AppClientParams.md#clearsourcemap)
 19 | - [defaultSender](types_app_client.AppClientParams.md#defaultsender)
 20 | - [defaultSigner](types_app_client.AppClientParams.md#defaultsigner)
 21 | 
 22 | ## Properties
 23 | 
 24 | ### algorand
 25 | 
 26 | • **algorand**: [`AlgorandClientInterface`](types_algorand_client_interface.AlgorandClientInterface.md)
 27 | 
 28 | An `AlgorandClient` instance
 29 | 
 30 | #### Defined in
 31 | 
 32 | [src/types/app-client.ts:328](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L328)
 33 | 
 34 | ___
 35 | 
 36 | ### appId
 37 | 
 38 | • **appId**: `bigint`
 39 | 
 40 | The ID of the app instance this client should make calls against.
 41 | 
 42 | #### Defined in
 43 | 
 44 | [src/types/app-client.ts:318](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L318)
 45 | 
 46 | ___
 47 | 
 48 | ### appName
 49 | 
 50 | • `Optional` **appName**: `string`
 51 | 
 52 | Optional override for the app name; used for on-chain metadata and lookups.
 53 | Defaults to the ARC-32/ARC-56 app spec name
 54 | 
 55 | #### Defined in
 56 | 
 57 | [src/types/app-client.ts:334](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L334)
 58 | 
 59 | ___
 60 | 
 61 | ### appSpec
 62 | 
 63 | • **appSpec**: `string` \| [`Arc56Contract`](types_app_arc56.Arc56Contract.md) \| [`AppSpec`](types_app_spec.AppSpec.md)
 64 | 
 65 | The ARC-56 or ARC-32 application spec as either:
 66 |  * Parsed JSON ARC-56 `Contract`
 67 |  * Parsed JSON ARC-32 `AppSpec`
 68 |  * Raw JSON string (in either ARC-56 or ARC-32 format)
 69 | 
 70 | #### Defined in
 71 | 
 72 | [src/types/app-client.ts:325](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L325)
 73 | 
 74 | ___
 75 | 
 76 | ### approvalSourceMap
 77 | 
 78 | • `Optional` **approvalSourceMap**: `ProgramSourceMap`
 79 | 
 80 | Optional source map for the approval program
 81 | 
 82 | #### Defined in
 83 | 
 84 | [src/types/app-client.ts:340](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L340)
 85 | 
 86 | ___
 87 | 
 88 | ### clearSourceMap
 89 | 
 90 | • `Optional` **clearSourceMap**: `ProgramSourceMap`
 91 | 
 92 | Optional source map for the clear state program
 93 | 
 94 | #### Defined in
 95 | 
 96 | [src/types/app-client.ts:342](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L342)
 97 | 
 98 | ___
 99 | 
100 | ### defaultSender
101 | 
102 | • `Optional` **defaultSender**: `string` \| `Address`
103 | 
104 | Optional address to use for the account to use as the default sender for calls.
105 | 
106 | #### Defined in
107 | 
108 | [src/types/app-client.ts:336](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L336)
109 | 
110 | ___
111 | 
112 | ### defaultSigner
113 | 
114 | • `Optional` **defaultSigner**: `TransactionSigner`
115 | 
116 | Optional signer to use as the default signer for default sender calls (if not specified then the signer will be resolved from `AlgorandClient`).
117 | 
118 | #### Defined in
119 | 
120 | [src/types/app-client.ts:338](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L338)
121 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/docs:scripts:README.md:
--------------------------------------------------------------------------------

```markdown
 1 | # reformat-all-commands.sh
 2 | 
 3 | Calls `reformat.py` and `convert_swagger.py` to populate the "reference-docs" structure. Requires two arguments be passed referencing the source code of _go-algorand_ and _indexer_ respectively:
 4 | 
 5 | `./reformat-all-commands.sh $GO_ALGORAND_SRC $INDEXER_SRC`
 6 | 
 7 | # reformat.py
 8 | 
 9 | Reformats markdown generated by the go spf13/cobra library to work with mkdocs.
10 | 
11 | Given the `goal` in the path, regenerate the docs from this directory by running:
12 | ```
13 | rm -rf ../docs/Reference-Docs/goal
14 | mkdir ../docs/Reference-Docs/goal
15 | goal generate-docs ../docs/Reference-Docs/goal
16 | ./reformat.py -path ../docs/Reference-Docs/goal -cmd goal
17 | ```
18 | 
19 | # convert_swagger.py
20 | 
21 | Given a swagger specfile, generates a markdown file.
22 | Currently uses `swagger2markup`, with some post processing to make
23 | the markdown more pleasant with our mkdocs theme.
24 | 
25 | ```
26 | ./convert_swagger.py -specfile ~/algorand/indexer/api/indexer.oas2.json  -target ../docs/reference/rest-apis/indexer.md
27 | ./convert_swagger.py -specfile ~/go/src/github.com/algorand/go-algorand/daemon/kmd/api/swagger.json  -target ../docs/reference/rest-apis/kmd.md
28 | ./convert_swagger.py -specfile ~/go/src/github.com/algorand/go-algorand/daemon/algod/api/algod.oas2.json  -target ../docs/reference/rest-apis/algod.md
29 | ```
30 | 
31 | # config_json_gen
32 | 
33 | Used to extract node config options from the go-algorand source. Markdown is written to stdout, warnings are written to stderr. To update the template, edit template.tmpl and rebuild the tool.
34 | 
35 | Build tool:
36 | ```
37 | go build .
38 | ```
39 | 
40 | Run:
41 | ```
42 | ./config_json_gen -path ~/algorand/go-algorand/ > ../../docs/run-a-node/reference/config.md
43 | ```
44 | 
45 | All in one:
46 | ```
47 | go run main.go -path ~/algorand/go-algorand/ > ../../docs/run-a-node/reference/config.md
48 | ```
49 | 
50 | # Code examples
51 | 
52 | ## Example formatting
53 | 
54 | Examples are all named descriptively and may be referenced in the markdown in multiple places if necessary.
55 | 
56 | The format for a named example in the docs markdown is:
57 | ```
58 | <!-- ===LANGSDK_EXAMPLENAME=== -->
59 | <!-- ===LANGSDK_EXAMPLENAME=== -->
60 | ```
61 | Running the import script will replace any text between these two tags with the matching example from the SDK repos.
62 | 
63 | A file containing all examples with descriptions is in `example_tracker/example_list.md`.
64 | A script that is helpful to track any examples that are missing from languages (or typo'd) is in `example_tracker/list_examples.sh`.
65 | 
66 | To ensure the language tabs display correctly the markdown must be formatted as follows:
67 | ```
68 | === "LanguageName"
69 |     <!-- ===LANGSDK_EXAMPLE_NAME=== -->
70 |     <!-- ===LANGSDK_EXAMPLE_NAME=== -->
71 | ```
72 | 
73 | That is, the comment flags must be tabbed over under the `=== "LanguageName"` line.
74 | 
75 | 
76 | 
77 | ## Running the import script
78 | 
79 | The import script, `import_examples.py`, will search the configured repository paths for named examples to be pulled into the docs. The script will clone the SDK repositories if they are not already present. The script will also update the SDK repositories if they are already present.
80 | 
81 | The following will import only the `PYSDK` examples:
82 | ```sh
83 | python import_examples.py --src PYSDK
84 | ```
85 | 
86 | ## New examples
87 | 
88 | For any *new* examples, please follow the formatting of the existing examples in that repository.
89 | 
90 | The `examples` branch of all the SDKs should be used for development of examples.  The examples should be runable with the smoke-test shell script, so that CI can catch any issues.
91 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:modelsv2.AccountAssetsInformationResponse.md:
--------------------------------------------------------------------------------

```markdown
  1 | [algosdk](../README.md) / [Exports](../modules.md) / [modelsv2](../modules/modelsv2.md) / AccountAssetsInformationResponse
  2 | 
  3 | # Class: AccountAssetsInformationResponse
  4 | 
  5 | [modelsv2](../modules/modelsv2.md).AccountAssetsInformationResponse
  6 | 
  7 | AccountAssetsInformationResponse contains a list of assets held by an account.
  8 | 
  9 | ## Hierarchy
 10 | 
 11 | - `default`
 12 | 
 13 |   ↳ **`AccountAssetsInformationResponse`**
 14 | 
 15 | ## Table of contents
 16 | 
 17 | ### Constructors
 18 | 
 19 | - [constructor](modelsv2.AccountAssetsInformationResponse.md#constructor)
 20 | 
 21 | ### Properties
 22 | 
 23 | - [assetHoldings](modelsv2.AccountAssetsInformationResponse.md#assetholdings)
 24 | - [attribute\_map](modelsv2.AccountAssetsInformationResponse.md#attribute_map)
 25 | - [nextToken](modelsv2.AccountAssetsInformationResponse.md#nexttoken)
 26 | - [round](modelsv2.AccountAssetsInformationResponse.md#round)
 27 | 
 28 | ### Methods
 29 | 
 30 | - [get\_obj\_for\_encoding](modelsv2.AccountAssetsInformationResponse.md#get_obj_for_encoding)
 31 | - [from\_obj\_for\_encoding](modelsv2.AccountAssetsInformationResponse.md#from_obj_for_encoding)
 32 | 
 33 | ## Constructors
 34 | 
 35 | ### constructor
 36 | 
 37 | • **new AccountAssetsInformationResponse**(`«destructured»`)
 38 | 
 39 | Creates a new `AccountAssetsInformationResponse` object.
 40 | 
 41 | #### Parameters
 42 | 
 43 | | Name | Type |
 44 | | :------ | :------ |
 45 | | `«destructured»` | `Object` |
 46 | | › `assetHoldings?` | [`AccountAssetHolding`](modelsv2.AccountAssetHolding.md)[] |
 47 | | › `nextToken?` | `string` |
 48 | | › `round` | `number` \| `bigint` |
 49 | 
 50 | #### Overrides
 51 | 
 52 | BaseModel.constructor
 53 | 
 54 | #### Defined in
 55 | 
 56 | client/v2/algod/models/types.ts:681
 57 | 
 58 | ## Properties
 59 | 
 60 | ### assetHoldings
 61 | 
 62 | • `Optional` **assetHoldings**: [`AccountAssetHolding`](modelsv2.AccountAssetHolding.md)[]
 63 | 
 64 | #### Defined in
 65 | 
 66 | client/v2/algod/models/types.ts:666
 67 | 
 68 | ___
 69 | 
 70 | ### attribute\_map
 71 | 
 72 | • **attribute\_map**: `Record`\<`string`, `string`\>
 73 | 
 74 | #### Inherited from
 75 | 
 76 | BaseModel.attribute\_map
 77 | 
 78 | #### Defined in
 79 | 
 80 | client/v2/basemodel.ts:56
 81 | 
 82 | ___
 83 | 
 84 | ### nextToken
 85 | 
 86 | • `Optional` **nextToken**: `string`
 87 | 
 88 | Used for pagination, when making another request provide this token with the
 89 | next parameter.
 90 | 
 91 | #### Defined in
 92 | 
 93 | client/v2/algod/models/types.ts:672
 94 | 
 95 | ___
 96 | 
 97 | ### round
 98 | 
 99 | • **round**: `number` \| `bigint`
100 | 
101 | The round for which this information is relevant.
102 | 
103 | #### Defined in
104 | 
105 | client/v2/algod/models/types.ts:664
106 | 
107 | ## Methods
108 | 
109 | ### get\_obj\_for\_encoding
110 | 
111 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
112 | 
113 | Get an object ready for encoding to either JSON or msgpack.
114 | 
115 | #### Parameters
116 | 
117 | | Name | Type | Default value | Description |
118 | | :------ | :------ | :------ | :------ |
119 | | `binary` | `boolean` | `false` | Use true to indicate that the encoding can handle raw binary objects (Uint8Arrays). Use false to indicate that raw binary objects should be converted to base64 strings. True should be used for objects that will be encoded with msgpack, and false should be used for objects that will be encoded with JSON. |
120 | 
121 | #### Returns
122 | 
123 | `Record`\<`string`, `any`\>
124 | 
125 | #### Inherited from
126 | 
127 | BaseModel.get\_obj\_for\_encoding
128 | 
129 | #### Defined in
130 | 
131 | client/v2/basemodel.ts:65
132 | 
133 | ___
134 | 
135 | ### from\_obj\_for\_encoding
136 | 
137 | ▸ `Static` **from_obj_for_encoding**(`data`): [`AccountAssetsInformationResponse`](modelsv2.AccountAssetsInformationResponse.md)
138 | 
139 | #### Parameters
140 | 
141 | | Name | Type |
142 | | :------ | :------ |
143 | | `data` | `Record`\<`string`, `any`\> |
144 | 
145 | #### Returns
146 | 
147 | [`AccountAssetsInformationResponse`](modelsv2.AccountAssetsInformationResponse.md)
148 | 
149 | #### Defined in
150 | 
151 | client/v2/algod/models/types.ts:703
152 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/tealscript:tutorials_Hello World_0003-contract.md:
--------------------------------------------------------------------------------

```markdown
 1 | ---
 2 | title: "3. The Template Contract"
 3 | ---
 4 | 
 5 | By default, the TEALScript template includes a very basic contract that performs some math operations. This page will breakdown the contract and explain what each of the components do and how TEALScript works. 
 6 | 
 7 | 
 8 | ## Import Contract
 9 | 
10 | ```ts
11 | import { Contract } from '@algorandfoundation/tealscript';
12 | ```
13 | 
14 | Here we are simply importing `Contract` from the tealscript npm package. `Contract` is the most important class in TEALScript as every contract written in TEALScript must extend the `Contract` class. Code outside of the `Contract` superclass will not get compiled.
15 | 
16 | ## Class Definition
17 | 
18 | ```ts
19 | // eslint-disable-next-line no-unused-vars
20 | class HelloWorld extends Contract {
21 | ```
22 | 
23 | As mentioned above, every contract must extend `Contract`. You will also notice that there is the ESLint rule, `no-unused-vars` is disabled for this line. ESLint expects every class we define to be used in our codebase. Since we are developing a contract, however, we don't directly use this class in other TypeScript files, thus we expect it to be unused.
24 | 
25 | ## Private Methods
26 | 
27 | ```ts
28 |   /**
29 |    * Calculates the sum of two numbers
30 |    *
31 |    * @param a
32 |    * @param b
33 |    * @returns The sum of a and b
34 |    */
35 |   private getSum(a: uint64, b: uint64): uint64 {
36 |     return a + b;
37 |   }
38 | 
39 |   /**
40 |    * Calculates the difference between two numbers
41 |    *
42 |    * @param a
43 |    * @param b
44 |    * @returns The difference between a and b.
45 |    */
46 |   private getDifference(a: uint64, b: uint64): uint64 {
47 |     return a >= b ? a - b : b - a;
48 |   }
49 | ```
50 | 
51 | In TypeScript, a private function is a function that can only be called internally by an instance of this class. The `private` keyword in TEALScript has a very similar meaning. If a method is `private`, then nobody can directly call the method. The only way to reach the logic defined in these methods is through a public method that explicitly calls them.
52 | 
53 | The logic of these methods are rather simple. 
54 | 
55 | ### getSum
56 | 
57 | Simply adds the two given numbers together/
58 | 
59 | ### getDifference
60 | 
61 | Will get the difference of the two given numbers by subtracting the smaller one from the bigger one.
62 | 
63 | ## Public Method
64 | 
65 | ```ts
66 |   /**
67 |   * A method that takes two numbers and does either addition or subtraction
68 |   *
69 |   * @param a The first number
70 |   * @param b The second number
71 |   * @param operation The operation to perform. Can be either 'sum' or 'difference'
72 |   *
73 |   * @returns The result of the operation
74 |   */
75 |   doMath(a: uint64, b: uint64, operation: string): uint64 {
76 |     let result: uint64;
77 | 
78 |     if (operation === 'sum') {
79 |       result = this.getSum(a, b);
80 |     } else if (operation === 'difference') {
81 |       result = this.getDifference(a, b);
82 |     } else throw Error('Invalid operation');
83 | 
84 |     return result;
85 |   }
86 | ```
87 | 
88 | ### doMath
89 | 
90 | Because this function is public (there is no `private` keyword, thus it is implicitly public), any client on or off chain can call `doMath`. 
91 | 
92 | As indicating by the TypeDoc comment, this function takes in two numbers and a string as an operation. The `operation` argument is used to determine whether `getSum` or `getDifferent` should be called.
93 | 
94 | ### Errors
95 | 
96 | If the `operation` string is not an expected operation, the contract will throw an error.
97 | 
98 | It should be noted that there is no concept of `try` in TEALScript. Errors are unrecoverable and will results in a failed transaction. On Algorand, failed transaction do not get charged a fee.
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:indexerModels.ApplicationLocalStatesResponse.md:
--------------------------------------------------------------------------------

```markdown
  1 | [algosdk](../README.md) / [Exports](../modules.md) / [indexerModels](../modules/indexerModels.md) / ApplicationLocalStatesResponse
  2 | 
  3 | # Class: ApplicationLocalStatesResponse
  4 | 
  5 | [indexerModels](../modules/indexerModels.md).ApplicationLocalStatesResponse
  6 | 
  7 | ## Hierarchy
  8 | 
  9 | - `default`
 10 | 
 11 |   ↳ **`ApplicationLocalStatesResponse`**
 12 | 
 13 | ## Table of contents
 14 | 
 15 | ### Constructors
 16 | 
 17 | - [constructor](indexerModels.ApplicationLocalStatesResponse.md#constructor)
 18 | 
 19 | ### Properties
 20 | 
 21 | - [appsLocalStates](indexerModels.ApplicationLocalStatesResponse.md#appslocalstates)
 22 | - [attribute\_map](indexerModels.ApplicationLocalStatesResponse.md#attribute_map)
 23 | - [currentRound](indexerModels.ApplicationLocalStatesResponse.md#currentround)
 24 | - [nextToken](indexerModels.ApplicationLocalStatesResponse.md#nexttoken)
 25 | 
 26 | ### Methods
 27 | 
 28 | - [get\_obj\_for\_encoding](indexerModels.ApplicationLocalStatesResponse.md#get_obj_for_encoding)
 29 | - [from\_obj\_for\_encoding](indexerModels.ApplicationLocalStatesResponse.md#from_obj_for_encoding)
 30 | 
 31 | ## Constructors
 32 | 
 33 | ### constructor
 34 | 
 35 | • **new ApplicationLocalStatesResponse**(`«destructured»`)
 36 | 
 37 | Creates a new `ApplicationLocalStatesResponse` object.
 38 | 
 39 | #### Parameters
 40 | 
 41 | | Name | Type |
 42 | | :------ | :------ |
 43 | | `«destructured»` | `Object` |
 44 | | › `appsLocalStates` | [`ApplicationLocalState`](indexerModels.ApplicationLocalState.md)[] |
 45 | | › `currentRound` | `number` \| `bigint` |
 46 | | › `nextToken?` | `string` |
 47 | 
 48 | #### Overrides
 49 | 
 50 | BaseModel.constructor
 51 | 
 52 | #### Defined in
 53 | 
 54 | client/v2/indexer/models/types.ts:989
 55 | 
 56 | ## Properties
 57 | 
 58 | ### appsLocalStates
 59 | 
 60 | • **appsLocalStates**: [`ApplicationLocalState`](indexerModels.ApplicationLocalState.md)[]
 61 | 
 62 | #### Defined in
 63 | 
 64 | client/v2/indexer/models/types.ts:969
 65 | 
 66 | ___
 67 | 
 68 | ### attribute\_map
 69 | 
 70 | • **attribute\_map**: `Record`\<`string`, `string`\>
 71 | 
 72 | #### Inherited from
 73 | 
 74 | BaseModel.attribute\_map
 75 | 
 76 | #### Defined in
 77 | 
 78 | client/v2/basemodel.ts:56
 79 | 
 80 | ___
 81 | 
 82 | ### currentRound
 83 | 
 84 | • **currentRound**: `number` \| `bigint`
 85 | 
 86 | Round at which the results were computed.
 87 | 
 88 | #### Defined in
 89 | 
 90 | client/v2/indexer/models/types.ts:974
 91 | 
 92 | ___
 93 | 
 94 | ### nextToken
 95 | 
 96 | • `Optional` **nextToken**: `string`
 97 | 
 98 | Used for pagination, when making another request provide this token with the
 99 | next parameter.
100 | 
101 | #### Defined in
102 | 
103 | client/v2/indexer/models/types.ts:980
104 | 
105 | ## Methods
106 | 
107 | ### get\_obj\_for\_encoding
108 | 
109 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
110 | 
111 | Get an object ready for encoding to either JSON or msgpack.
112 | 
113 | #### Parameters
114 | 
115 | | Name | Type | Default value | Description |
116 | | :------ | :------ | :------ | :------ |
117 | | `binary` | `boolean` | `false` | Use true to indicate that the encoding can handle raw binary objects (Uint8Arrays). Use false to indicate that raw binary objects should be converted to base64 strings. True should be used for objects that will be encoded with msgpack, and false should be used for objects that will be encoded with JSON. |
118 | 
119 | #### Returns
120 | 
121 | `Record`\<`string`, `any`\>
122 | 
123 | #### Inherited from
124 | 
125 | BaseModel.get\_obj\_for\_encoding
126 | 
127 | #### Defined in
128 | 
129 | client/v2/basemodel.ts:65
130 | 
131 | ___
132 | 
133 | ### from\_obj\_for\_encoding
134 | 
135 | ▸ `Static` **from_obj_for_encoding**(`data`): [`ApplicationLocalStatesResponse`](indexerModels.ApplicationLocalStatesResponse.md)
136 | 
137 | #### Parameters
138 | 
139 | | Name | Type |
140 | | :------ | :------ |
141 | | `data` | `Record`\<`string`, `any`\> |
142 | 
143 | #### Returns
144 | 
145 | [`ApplicationLocalStatesResponse`](indexerModels.ApplicationLocalStatesResponse.md)
146 | 
147 | #### Defined in
148 | 
149 | client/v2/indexer/models/types.ts:1011
150 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy-categories/python.json:
--------------------------------------------------------------------------------

```json
  1 | {
  2 |   "name": "Python Development",
  3 |   "description": "Python development resources for Algorand blockchain",
  4 |   "path": "python",
  5 |   "subcategories": {
  6 |     "examples": {
  7 |       "name": "Code Examples",
  8 |       "description": "Example implementations in Python",
  9 |       "path": "python/examples",
 10 |       "subcategories": {
 11 |         "basics": {
 12 |           "name": "Basic Examples",
 13 |           "path": "python/examples/basics",
 14 |           "documents": [
 15 |             {
 16 |               "name": "hello_world",
 17 |               "description": "Hello World Example",
 18 |               "path": "developer:python:code:example:hello_world.md"
 19 |             },
 20 |             {
 21 |               "name": "accounts",
 22 |               "description": "Account Management",
 23 |               "path": "developer:python:code:example:accounts.md"
 24 |             },
 25 |             {
 26 |               "name": "assets",
 27 |               "description": "Asset Operations",
 28 |               "path": "developer:python:code:example:assets.md"
 29 |             },
 30 |             {
 31 |               "name": "transactions",
 32 |               "description": "Transaction Handling",
 33 |               "path": "developer:python:code:example:transactions.md"
 34 |             }
 35 |           ]
 36 |         },
 37 |         "storage": {
 38 |           "name": "Storage Examples",
 39 |           "path": "python/examples/storage",
 40 |           "documents": [
 41 |             {
 42 |               "name": "box_storage",
 43 |               "description": "Box Storage Example",
 44 |               "path": "developer:python:code:example:box_storage.md"
 45 |             },
 46 |             {
 47 |               "name": "global_storage",
 48 |               "description": "Global Storage Example",
 49 |               "path": "developer:python:code:example:global_storage.md"
 50 |             },
 51 |             {
 52 |               "name": "local_storage",
 53 |               "description": "Local Storage Example",
 54 |               "path": "developer:python:code:example:local_storage.md"
 55 |             },
 56 |             {
 57 |               "name": "scratch_storage",
 58 |               "description": "Scratch Storage Example",
 59 |               "path": "developer:python:code:example:scratch_storage.md"
 60 |             },
 61 |             {
 62 |               "name": "struct_in_box",
 63 |               "description": "Struct in Box Example",
 64 |               "path": "developer:python:code:example:struct_in_box.md"
 65 |             }
 66 |           ]
 67 |         }
 68 |       }
 69 |     },
 70 |     "testing": {
 71 |       "name": "Testing Guide",
 72 |       "description": "Comprehensive testing documentation for Python",
 73 |       "path": "python/testing",
 74 |       "subcategories": {
 75 |         "fundamentals": {
 76 |           "name": "Testing Fundamentals",
 77 |           "path": "python/testing/fundamentals",
 78 |           "documents": [
 79 |             {
 80 |               "name": "index",
 81 |               "description": "Testing Guide Overview",
 82 |               "path": "puya:python:testing:docs:testing-guide:index.md"
 83 |             },
 84 |             {
 85 |               "name": "concepts",
 86 |               "description": "Testing Concepts",
 87 |               "path": "puya:python:testing:docs:testing-guide:concepts.md"
 88 |             },
 89 |             {
 90 |               "name": "coverage",
 91 |               "description": "Test Coverage",
 92 |               "path": "puya:python:testing:docs:coverage.md"
 93 |             },
 94 |             {
 95 |               "name": "examples",
 96 |               "description": "Testing Examples",
 97 |               "path": "puya:python:testing:docs:examples.md"
 98 |             }
 99 |           ]
100 |         }
101 |       }
102 |     }
103 |   }
104 | }
105 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/algokit:utils:typescript:capabilities:transaction-composer.md:
--------------------------------------------------------------------------------

```markdown
 1 | # Transaction composer
 2 | 
 3 | The `TransactionComposer` class allows you to easily compose one or more compliant Algorand transactions and execute and/or simulate them.
 4 | 
 5 | It's the core of how the [`AlgorandClient`](./algorand-client.md) class composes and sends transactions.
 6 | 
 7 | To get an instance of `TransactionComposer` you can either get it from an [app client](./app-client.md), from an [`AlgorandClient`](./algorand-client.md), or by new-ing up via the constructor.
 8 | 
 9 | ```typescript
10 | const composerFromAlgorand = algorand.newGroup()
11 | const composerFromAppClient = appClient.algorand.newGroup()
12 | const composerFromConstructor = new TransactionComposer({
13 |   algod,
14 |   /* Return the algosdk.TransactionSigner for this address*/
15 |   getSigner: (address: string) => signer,
16 | })
17 | const composerFromConstructorWithOptionalParams = new TransactionComposer({
18 |   algod,
19 |   /* Return the algosdk.TransactionSigner for this address*/
20 |   getSigner: (address: string) => signer,
21 |   getSuggestedParams: () => algod.getTransactionParams().do(),
22 |   defaultValidityWindow: 1000,
23 |   appManager: new AppManager(algod),
24 | })
25 | ```
26 | 
27 | ## Constructing a transaction
28 | 
29 | To construct a transaction you need to add it to the composer, passing in the relevant [params object](../code/modules/types_composer.md#type-aliases) for that transaction. Params are normal JavaScript objects and all of them extend the [common call parameters](./algorand-client.md#transaction-parameters).
30 | 
31 | The [methods to construct a transaction](../code/classes/types_composer.default.md#methods) are all named `add{TransactionType}` and return an instance of the composer so they can be chained together fluently to construct a transaction group.
32 | 
33 | For example:
34 | 
35 | ```typescript
36 | const result = algorand
37 |   .newGroup()
38 |   .addPayment({ sender: 'SENDER', receiver: 'RECEIVER', amount: (100).microAlgo() })
39 |   .addAppCallMethodCall({
40 |     sender: 'SENDER',
41 |     appId: 123n,
42 |     method: abiMethod,
43 |     args: [1, 2, 3],
44 |   })
45 | ```
46 | 
47 | ## Simulating a transaction
48 | 
49 | Transactions can be simulated using the simulate endpoint in algod, which enables evaluating the transaction on the network without it actually being commited to a block.
50 | This is a powerful feature, which has a number of options which are detailed in the [simulate API docs](https://developer.algorand.org/docs/rest-apis/algod/#post-v2transactionssimulate).
51 | 
52 | For example you can simulate a transaction group like below:
53 | 
54 | ```typescript
55 | const result = await algorand
56 |   .newGroup()
57 |   .addPayment({ sender: 'SENDER', receiver: 'RECEIVER', amount: (100).microAlgo() })
58 |   .addAppCallMethodCall({
59 |     sender: 'SENDER',
60 |     appId: 123n,
61 |     method: abiMethod,
62 |     args: [1, 2, 3],
63 |   })
64 |   .simulate()
65 | ```
66 | 
67 | The above will execute a simulate request asserting that all transactions in the group are correctly signed.
68 | 
69 | ### Simulate without signing
70 | 
71 | There are situations where you may not be able to (or want to) sign the transactions when executing simulate.
72 | In these instances you should set `skipSignatures: true` which automatically builds empty transaction signers and sets both `fix-signers` and `allow-empty-signatures` to `true` when sending the algod API call.
73 | 
74 | For example:
75 | 
76 | ```typescript
77 | const result = await algorand
78 |   .newGroup()
79 |   .addPayment({ sender: 'SENDER', receiver: 'RECEIVER', amount: (100).microAlgo() })
80 |   .addAppCallMethodCall({
81 |     sender: 'SENDER',
82 |     appId: 123n,
83 |     method: abiMethod,
84 |     args: [1, 2, 3],
85 |   })
86 |   .simulate({
87 |     skipSignatures: true,
88 |   })
89 | ```
90 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:indexerModels.TransactionSignatureMultisig.md:
--------------------------------------------------------------------------------

```markdown
  1 | [algosdk](../README.md) / [Exports](../modules.md) / [indexerModels](../modules/indexerModels.md) / TransactionSignatureMultisig
  2 | 
  3 | # Class: TransactionSignatureMultisig
  4 | 
  5 | [indexerModels](../modules/indexerModels.md).TransactionSignatureMultisig
  6 | 
  7 | (msig) structure holding multiple subsignatures.
  8 | Definition:
  9 | crypto/multisig.go : MultisigSig
 10 | 
 11 | ## Hierarchy
 12 | 
 13 | - `default`
 14 | 
 15 |   ↳ **`TransactionSignatureMultisig`**
 16 | 
 17 | ## Table of contents
 18 | 
 19 | ### Constructors
 20 | 
 21 | - [constructor](indexerModels.TransactionSignatureMultisig.md#constructor)
 22 | 
 23 | ### Properties
 24 | 
 25 | - [attribute\_map](indexerModels.TransactionSignatureMultisig.md#attribute_map)
 26 | - [subsignature](indexerModels.TransactionSignatureMultisig.md#subsignature)
 27 | - [threshold](indexerModels.TransactionSignatureMultisig.md#threshold)
 28 | - [version](indexerModels.TransactionSignatureMultisig.md#version)
 29 | 
 30 | ### Methods
 31 | 
 32 | - [get\_obj\_for\_encoding](indexerModels.TransactionSignatureMultisig.md#get_obj_for_encoding)
 33 | - [from\_obj\_for\_encoding](indexerModels.TransactionSignatureMultisig.md#from_obj_for_encoding)
 34 | 
 35 | ## Constructors
 36 | 
 37 | ### constructor
 38 | 
 39 | • **new TransactionSignatureMultisig**(`«destructured»`)
 40 | 
 41 | Creates a new `TransactionSignatureMultisig` object.
 42 | 
 43 | #### Parameters
 44 | 
 45 | | Name | Type |
 46 | | :------ | :------ |
 47 | | `«destructured»` | `Object` |
 48 | | › `subsignature?` | [`TransactionSignatureMultisigSubsignature`](indexerModels.TransactionSignatureMultisigSubsignature.md)[] |
 49 | | › `threshold?` | `number` \| `bigint` |
 50 | | › `version?` | `number` \| `bigint` |
 51 | 
 52 | #### Overrides
 53 | 
 54 | BaseModel.constructor
 55 | 
 56 | #### Defined in
 57 | 
 58 | client/v2/indexer/models/types.ts:5551
 59 | 
 60 | ## Properties
 61 | 
 62 | ### attribute\_map
 63 | 
 64 | • **attribute\_map**: `Record`\<`string`, `string`\>
 65 | 
 66 | #### Inherited from
 67 | 
 68 | BaseModel.attribute\_map
 69 | 
 70 | #### Defined in
 71 | 
 72 | client/v2/basemodel.ts:56
 73 | 
 74 | ___
 75 | 
 76 | ### subsignature
 77 | 
 78 | • `Optional` **subsignature**: [`TransactionSignatureMultisigSubsignature`](indexerModels.TransactionSignatureMultisigSubsignature.md)[]
 79 | 
 80 | (subsig) holds pairs of public key and signatures.
 81 | 
 82 | #### Defined in
 83 | 
 84 | client/v2/indexer/models/types.ts:5533
 85 | 
 86 | ___
 87 | 
 88 | ### threshold
 89 | 
 90 | • `Optional` **threshold**: `number` \| `bigint`
 91 | 
 92 | (thr)
 93 | 
 94 | #### Defined in
 95 | 
 96 | client/v2/indexer/models/types.ts:5538
 97 | 
 98 | ___
 99 | 
100 | ### version
101 | 
102 | • `Optional` **version**: `number` \| `bigint`
103 | 
104 | (v)
105 | 
106 | #### Defined in
107 | 
108 | client/v2/indexer/models/types.ts:5543
109 | 
110 | ## Methods
111 | 
112 | ### get\_obj\_for\_encoding
113 | 
114 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
115 | 
116 | Get an object ready for encoding to either JSON or msgpack.
117 | 
118 | #### Parameters
119 | 
120 | | Name | Type | Default value | Description |
121 | | :------ | :------ | :------ | :------ |
122 | | `binary` | `boolean` | `false` | Use true to indicate that the encoding can handle raw binary objects (Uint8Arrays). Use false to indicate that raw binary objects should be converted to base64 strings. True should be used for objects that will be encoded with msgpack, and false should be used for objects that will be encoded with JSON. |
123 | 
124 | #### Returns
125 | 
126 | `Record`\<`string`, `any`\>
127 | 
128 | #### Inherited from
129 | 
130 | BaseModel.get\_obj\_for\_encoding
131 | 
132 | #### Defined in
133 | 
134 | client/v2/basemodel.ts:65
135 | 
136 | ___
137 | 
138 | ### from\_obj\_for\_encoding
139 | 
140 | ▸ `Static` **from_obj_for_encoding**(`data`): [`TransactionSignatureMultisig`](indexerModels.TransactionSignatureMultisig.md)
141 | 
142 | #### Parameters
143 | 
144 | | Name | Type |
145 | | :------ | :------ |
146 | | `data` | `Record`\<`string`, `any`\> |
147 | 
148 | #### Returns
149 | 
150 | [`TransactionSignatureMultisig`](indexerModels.TransactionSignatureMultisig.md)
151 | 
152 | #### Defined in
153 | 
154 | client/v2/indexer/models/types.ts:5573
155 | 
```

--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy-categories/puya.json:
--------------------------------------------------------------------------------

```json
 1 | {
 2 |   "name": "Puya",
 3 |   "description": "Python-based language for writing Algorand smart contracts",
 4 |   "path": "puya",
 5 |   "documents": [
 6 |     {"name": "README", "path": "puya:README.md"}
 7 |   ],
 8 |   "subcategories": {
 9 |     "docs": {
10 |       "name": "Documentation",
11 |       "description": "Puya documentation",
12 |       "path": "puya:docs",
13 |       "documents": [
14 |         {"name": "Index", "path": "puya:docs:index.md"},
15 |         {"name": "API", "path": "puya:docs:api.md"},
16 |         {"name": "API - AlgoPy", "path": "puya:docs:api-algopy.md"},
17 |         {"name": "API - AlgoPy ARC4", "path": "puya:docs:api-algopy.arc4.md"},
18 |         {"name": "API - AlgoPy Group Transactions", "path": "puya:docs:api-algopy.gtxn.md"},
19 |         {"name": "API - AlgoPy Inner Transactions", "path": "puya:docs:api-algopy.itxn.md"},
20 |         {"name": "API - AlgoPy Operations", "path": "puya:docs:api-algopy.op.md"},
21 |         {"name": "Compiler", "path": "puya:docs:compiler.md"},
22 |         {"name": "Language Guide", "path": "puya:docs:language-guide.md"},
23 |         {"name": "Principles", "path": "puya:docs:principles.md"},
24 |         {"name": "Language Guide - ARC-4", "path": "puya:docs:lg-arc4.md"},
25 |         {"name": "Language Guide - ARC-28", "path": "puya:docs:lg-arc28.md"},
26 |         {"name": "Language Guide - Builtins", "path": "puya:docs:lg-builtins.md"},
27 |         {"name": "Language Guide - Calling Apps", "path": "puya:docs:lg-calling-apps.md"},
28 |         {"name": "Language Guide - Compilation", "path": "puya:docs:lg-compile.md"},
29 |         {"name": "Language Guide - Control Flow", "path": "puya:docs:lg-control.md"},
30 |         {"name": "Language Guide - Errors", "path": "puya:docs:lg-errors.md"},
31 |         {"name": "Language Guide - Logs", "path": "puya:docs:lg-logs.md"},
32 |         {"name": "Language Guide - Modules", "path": "puya:docs:lg-modules.md"},
33 |         {"name": "Language Guide - Opcode Budget", "path": "puya:docs:lg-opcode-budget.md"},
34 |         {"name": "Language Guide - Operations", "path": "puya:docs:lg-ops.md"},
35 |         {"name": "Language Guide - Storage", "path": "puya:docs:lg-storage.md"},
36 |         {"name": "Language Guide - Structure", "path": "puya:docs:lg-structure.md"},
37 |         {"name": "Language Guide - Transactions", "path": "puya:docs:lg-transactions.md"},
38 |         {"name": "Language Guide - Types", "path": "puya:docs:lg-types.md"},
39 |         {"name": "Language Guide - Unsupported Python Features", "path": "puya:docs:lg-unsupported-python-features.md"},
40 |         {"name": "Testing Guide", "path": "puya:docs:algopy_testing:index.md"}
41 |       ]
42 |     },
43 |     "examples": {
44 |       "name": "Examples",
45 |       "description": "Example Puya contracts",
46 |       "path": "puya:examples",
47 |       "documents": [
48 |         {"name": "Auction", "path": "puya:examples:auction:README.md"}
49 |       ]
50 |     },
51 |     "architecture": {
52 |       "name": "Architecture",
53 |       "description": "Puya architecture documentation",
54 |       "path": "puya:src:puya",
55 |       "documents": [
56 |         {"name": "Architecture", "path": "puya:src:puya:ARCHITECTURE.md"}
57 |       ]
58 |     },
59 |     "stubs": {
60 |       "name": "Stubs",
61 |       "description": "Type stubs documentation",
62 |       "path": "puya:stubs",
63 |       "documents": [
64 |         {"name": "README", "path": "puya:stubs:README.md"}
65 |       ]
66 |     },
67 |     "tests": {
68 |       "name": "Tests",
69 |       "description": "Test package documentation",
70 |       "path": "puya:tests",
71 |       "documents": [
72 |         {"name": "Test Expected Output", "path": "puya:tests:test_expected_output:README.md"}
73 |       ]
74 |     }
75 |   }
76 | }
77 | 
```
Page 13/93FirstPrevNextLast