This is page 8 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/algokit:utils:typescript:code:interfaces:types_config.Config.md:
--------------------------------------------------------------------------------
```markdown
1 | [@algorandfoundation/algokit-utils](../README.md) / [types/config](../modules/types_config.md) / Config
2 |
3 | # Interface: Config
4 |
5 | [types/config](../modules/types_config.md).Config
6 |
7 | The AlgoKit configuration type
8 |
9 | ## Table of contents
10 |
11 | ### Properties
12 |
13 | - [debug](types_config.Config.md#debug)
14 | - [events](types_config.Config.md#events)
15 | - [logger](types_config.Config.md#logger)
16 | - [maxSearchDepth](types_config.Config.md#maxsearchdepth)
17 | - [populateAppCallResources](types_config.Config.md#populateappcallresources)
18 | - [projectRoot](types_config.Config.md#projectroot)
19 | - [traceAll](types_config.Config.md#traceall)
20 | - [traceBufferSizeMb](types_config.Config.md#tracebuffersizemb)
21 |
22 | ## Properties
23 |
24 | ### debug
25 |
26 | • **debug**: `boolean`
27 |
28 | Whether or not debug mode is enabled
29 |
30 | #### Defined in
31 |
32 | [src/types/config.ts:9](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/config.ts#L9)
33 |
34 | ___
35 |
36 | ### events
37 |
38 | • **events**: [`AsyncEventEmitter`](../classes/types_async_event_emitter.AsyncEventEmitter.md)
39 |
40 | #### Defined in
41 |
42 | [src/types/config.ts:24](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/config.ts#L24)
43 |
44 | ___
45 |
46 | ### logger
47 |
48 | • **logger**: [`Logger`](../modules/types_logging.md#logger)
49 |
50 | Logger
51 |
52 | #### Defined in
53 |
54 | [src/types/config.ts:7](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/config.ts#L7)
55 |
56 | ___
57 |
58 | ### maxSearchDepth
59 |
60 | • **maxSearchDepth**: `number`
61 |
62 | The maximum depth to search for a specific file
63 |
64 | #### Defined in
65 |
66 | [src/types/config.ts:17](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/config.ts#L17)
67 |
68 | ___
69 |
70 | ### populateAppCallResources
71 |
72 | • **populateAppCallResources**: `boolean`
73 |
74 | Whether to enable populateAppCallResources in sendParams by default.
75 | Default value is false.
76 |
77 | #### Defined in
78 |
79 | [src/types/config.ts:22](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/config.ts#L22)
80 |
81 | ___
82 |
83 | ### projectRoot
84 |
85 | • **projectRoot**: ``null`` \| `string`
86 |
87 | The path to the project root directory
88 |
89 | #### Defined in
90 |
91 | [src/types/config.ts:11](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/config.ts#L11)
92 |
93 | ___
94 |
95 | ### traceAll
96 |
97 | • **traceAll**: `boolean`
98 |
99 | Indicates whether to trace all operations
100 |
101 | #### Defined in
102 |
103 | [src/types/config.ts:13](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/config.ts#L13)
104 |
105 | ___
106 |
107 | ### traceBufferSizeMb
108 |
109 | • **traceBufferSizeMb**: `number`
110 |
111 | The size of the trace buffer in megabytes
112 |
113 | #### Defined in
114 |
115 | [src/types/config.ts:15](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/config.ts#L15)
116 |
```
--------------------------------------------------------------------------------
/packages/server/src/tools/apiManager/tinyman/bootstrap.ts:
--------------------------------------------------------------------------------
```typescript
1 | import { Tool, ErrorCode, McpError } from '@modelcontextprotocol/sdk/types.js';
2 | import { Bootstrap, SupportedNetwork } from '@tinymanorg/tinyman-js-sdk';
3 | import { algodClient } from '../../../algorand-client.js';
4 | import { env } from '../../../env.js';
5 |
6 | export const bootstrapTools: Tool[] = [
7 | {
8 | name: 'api_tinyman_get_pool_creation_quote',
9 | description: 'Get quote for creating a new Tinyman pool',
10 | inputSchema: {
11 | type: 'object',
12 | properties: {
13 | asset1Id: {
14 | type: 'integer',
15 | description: 'ID of the first asset'
16 | },
17 | asset2Id: {
18 | type: 'integer',
19 | description: 'ID of the second asset'
20 | },
21 | initiatorAddr: {
22 | type: 'string',
23 | description: 'Address of the account creating the pool'
24 | },
25 | version: {
26 | type: 'string',
27 | enum: ['v1_1', 'v2'],
28 | description: 'Tinyman protocol version',
29 | default: 'v2'
30 | }
31 | },
32 | required: ['asset1Id', 'asset2Id', 'initiatorAddr']
33 | }
34 | }
35 | ];
36 |
37 | export async function handleBootstrapTools(args: any): Promise<any> {
38 | const {
39 | name,
40 | asset1Id,
41 | asset2Id,
42 | initiatorAddr,
43 | version = 'v2'
44 | } = args;
45 |
46 | if (name === 'api_tinyman_get_pool_creation_quote') {
47 | try {
48 | const quote = await (version === 'v2'
49 | ? Bootstrap.v2.generateTxns({
50 | client: algodClient,
51 | network: env.algorand_network as SupportedNetwork,
52 | asset_1: {
53 | id: asset1Id.toString(),
54 | unit_name: ''
55 | },
56 | asset_2: {
57 | id: asset2Id.toString(),
58 | unit_name: ''
59 | },
60 | initiatorAddr
61 | })
62 | : Bootstrap.v1_1.generateTxns({
63 | client: algodClient,
64 | network: env.algorand_network as SupportedNetwork,
65 | asset_1: {
66 | id: asset1Id.toString(),
67 | unit_name: ''
68 | },
69 | asset_2: {
70 | id: asset2Id.toString(),
71 | unit_name: ''
72 | },
73 | initiatorAddr
74 | }));
75 |
76 | return {
77 | version,
78 | asset1Id,
79 | asset2Id,
80 | transactionCount: quote.length,
81 | estimatedFees: quote.reduce((sum, txn) => sum + txn.txn.fee, 0)
82 | };
83 | } catch (error) {
84 | throw new McpError(
85 | ErrorCode.InternalError,
86 | `Failed to get pool creation quote: ${error instanceof Error ? error.message : String(error)}`
87 | );
88 | }
89 | }
90 |
91 | throw new McpError(
92 | ErrorCode.MethodNotFound,
93 | `Unknown bootstrap tool: ${name}`
94 | );
95 | }
96 |
```
--------------------------------------------------------------------------------
/packages/server/src/tools/apiManager/index.ts:
--------------------------------------------------------------------------------
```typescript
1 | import { algodTools, handleAlgodTools } from './algod/index.js';
2 | import { indexerTools, handleIndexerTools } from './indexer/index.js';
3 | import { nfdTools, handleNFDTools } from './nfd/index.js';
4 | import { vestigeTools, handleVestigeTools } from './vestige/index.js';
5 | import { tinymanTools, handleTinymanTools } from './tinyman/index.js';
6 | import { ultradeTools, handleUltradeTools } from './ultrade/index.js';
7 | import { exampleTools, handleExampleTools } from './example/index.js';
8 | import { ErrorCode, McpError } from '@modelcontextprotocol/sdk/types.js';
9 | import { ResponseProcessor } from '../../utils/responseProcessor.js';
10 | import { env } from '../../env.js';
11 | // Combine all API tools
12 | export const apiManager = [
13 | ...algodTools,
14 | ...indexerTools,
15 | ...nfdTools,
16 | ...(env.vestige_active==='true' ? vestigeTools : []),
17 | ...(env.tinyman_active==='true' ? tinymanTools : []),
18 | ...(env.ultrade_active==='true' ? ultradeTools : []),
19 | ...exampleTools
20 | ];
21 |
22 | // Handle all API tools
23 | export async function handleApiManager(name: string, args: any): Promise<any> {
24 | try {
25 | let response;
26 |
27 | // Tinyman tools
28 | if (name.startsWith('api_tinyman_') && env.tinyman_active==='true') {
29 | response = await handleTinymanTools(name, args);
30 | }
31 | // Vestige tools
32 | else if (name.startsWith('api_vestige_') && env.vestige_active==='true') {
33 | response = await handleVestigeTools(name, args);
34 | }
35 | // Ultrade tools
36 | else if (name.startsWith('api_ultrade_')&& env.ultrade_active==='true') {
37 | response = await handleUltradeTools(name, args);
38 | }
39 | // NFD tools - check first since they're most specific
40 | else if (name.startsWith('api_nfd_')) {
41 | response = await handleNFDTools(name, args);
42 | }
43 | // Indexer tools
44 | else if (name.startsWith('api_indexer_')) {
45 | response = await handleIndexerTools(name, args);
46 | }
47 | // Algod tools - most general get_ prefix, check last
48 | else if (name.startsWith('api_algod_')) {
49 | response = await handleAlgodTools(name, args);
50 | }
51 | else if (name.startsWith('api_example_')) {
52 | response = await handleExampleTools(name, args);
53 | }
54 | else {
55 | throw new McpError(
56 | ErrorCode.MethodNotFound,
57 | `Unknown tool: ${name}`
58 | );
59 | }
60 |
61 | // Process and format the response
62 | return ResponseProcessor.processResponse(response, args?.pageToken);
63 |
64 | } catch (error) {
65 | if (error instanceof McpError) {
66 | throw error;
67 | }
68 | throw new McpError(
69 | ErrorCode.InternalError,
70 | `Failed to handle resource tool: ${error instanceof Error ? error.message : String(error)}`
71 | );
72 | }
73 | }
74 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/algokit:utils:python:markdown:capabilities:client.md:
--------------------------------------------------------------------------------
```markdown
1 | # Client management
2 |
3 | Client management is one of the core capabilities provided by AlgoKit Utils.
4 | It allows you to create [algod](https://developer.algorand.org/docs/rest-apis/algod), [indexer](https://developer.algorand.org/docs/rest-apis/indexer)
5 | and [kmd](https://developer.algorand.org/docs/rest-apis/kmd) clients against various networks resolved from environment or specified configuration.
6 |
7 | Any AlgoKit Utils function that needs one of these clients will take the underlying `algosdk` classes (`algosdk.v2client.algod.AlgodClient`, `algosdk.v2client.indexer.IndexerClient`,
8 | `algosdk.kmd.KMDClient`) so inline with the [Modularity](../index.md#id1) principle you can use existing logic to get instances of these clients without needing to use the
9 | Client management capability if you prefer.
10 |
11 | To see some usage examples check out the [automated tests](https://github.com/algorandfoundation/algokit-utils-py/blob/main/tests/test_network_clients.py).
12 |
13 | ## Network configuration
14 |
15 | The network configuration is specified using the `AlgoClientConfig` class. This same interface is used to specify the config for algod, indexer and kmd clients.
16 |
17 | There are a number of ways to produce one of these configuration objects:
18 |
19 | - Manually creating the object, e.g. `AlgoClientConfig(server="https://myalgodnode.com", token="SECRET_TOKEN")`
20 | - `algokit_utils.get_algonode_config(network, config, token)`: Loads an Algod or indexer config against [Nodely](https://nodely.io/docs/free/start) to either MainNet or TestNet
21 | - `algokit_utils.get_default_localnet_config(configOrPort)`: Loads an Algod, Indexer or Kmd config against [LocalNet](https://github.com/algorandfoundation/algokit-cli/blob/main/docs/features/localnet.md) using the default configuration
22 |
23 | ## Clients
24 |
25 | Once you have the configuration for a client, to get the client you can use the following functions:
26 |
27 | - `algokit_utils.get_algod_client(config)`: Returns an Algod client for the given configuration or if none is provided retrieves a configuration from the environment using `ALGOD_SERVER`, `ALGOD_TOKEN` and optionally `ALGOD_PORT`.
28 | - `algokit_utils.get_indexer_client(config)`: Returns an Indexer client for given configuration or if none is provided retrieves a configuration from the environment using `INDEXER_SERVER`, `INDEXER_TOKEN` and optionally `INDEXER_PORT`
29 | - `algokit_utils.get_kmd_client_from_algod_client(config)`: - Returns a Kmd client based on the provided algod client configuration, with the assumption the KMD services is running on the same host but a different port (either `KMD_PORT` environment variable or `4002` by default)
30 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:modelsv2.KvDelta.md:
--------------------------------------------------------------------------------
```markdown
1 | [algosdk](../README.md) / [Exports](../modules.md) / [modelsv2](../modules/modelsv2.md) / KvDelta
2 |
3 | # Class: KvDelta
4 |
5 | [modelsv2](../modules/modelsv2.md).KvDelta
6 |
7 | A single Delta containing the key, the previous value and the current value for
8 | a single round.
9 |
10 | ## Hierarchy
11 |
12 | - `default`
13 |
14 | ↳ **`KvDelta`**
15 |
16 | ## Table of contents
17 |
18 | ### Constructors
19 |
20 | - [constructor](modelsv2.KvDelta.md#constructor)
21 |
22 | ### Properties
23 |
24 | - [attribute\_map](modelsv2.KvDelta.md#attribute_map)
25 | - [key](modelsv2.KvDelta.md#key)
26 | - [value](modelsv2.KvDelta.md#value)
27 |
28 | ### Methods
29 |
30 | - [get\_obj\_for\_encoding](modelsv2.KvDelta.md#get_obj_for_encoding)
31 | - [from\_obj\_for\_encoding](modelsv2.KvDelta.md#from_obj_for_encoding)
32 |
33 | ## Constructors
34 |
35 | ### constructor
36 |
37 | • **new KvDelta**(`«destructured»`)
38 |
39 | Creates a new `KvDelta` object.
40 |
41 | #### Parameters
42 |
43 | | Name | Type |
44 | | :------ | :------ |
45 | | `«destructured»` | `Object` |
46 | | › `key?` | `string` \| `Uint8Array` |
47 | | › `value?` | `string` \| `Uint8Array` |
48 |
49 | #### Overrides
50 |
51 | BaseModel.constructor
52 |
53 | #### Defined in
54 |
55 | client/v2/algod/models/types.ts:3334
56 |
57 | ## Properties
58 |
59 | ### attribute\_map
60 |
61 | • **attribute\_map**: `Record`\<`string`, `string`\>
62 |
63 | #### Inherited from
64 |
65 | BaseModel.attribute\_map
66 |
67 | #### Defined in
68 |
69 | client/v2/basemodel.ts:56
70 |
71 | ___
72 |
73 | ### key
74 |
75 | • `Optional` **key**: `Uint8Array`
76 |
77 | The key, base64 encoded.
78 |
79 | #### Defined in
80 |
81 | client/v2/algod/models/types.ts:3322
82 |
83 | ___
84 |
85 | ### value
86 |
87 | • `Optional` **value**: `Uint8Array`
88 |
89 | The new value of the KV store entry, base64 encoded.
90 |
91 | #### Defined in
92 |
93 | client/v2/algod/models/types.ts:3327
94 |
95 | ## Methods
96 |
97 | ### get\_obj\_for\_encoding
98 |
99 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
100 |
101 | Get an object ready for encoding to either JSON or msgpack.
102 |
103 | #### Parameters
104 |
105 | | Name | Type | Default value | Description |
106 | | :------ | :------ | :------ | :------ |
107 | | `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. |
108 |
109 | #### Returns
110 |
111 | `Record`\<`string`, `any`\>
112 |
113 | #### Inherited from
114 |
115 | BaseModel.get\_obj\_for\_encoding
116 |
117 | #### Defined in
118 |
119 | client/v2/basemodel.ts:65
120 |
121 | ___
122 |
123 | ### from\_obj\_for\_encoding
124 |
125 | ▸ `Static` **from_obj_for_encoding**(`data`): [`KvDelta`](modelsv2.KvDelta.md)
126 |
127 | #### Parameters
128 |
129 | | Name | Type |
130 | | :------ | :------ |
131 | | `data` | `Record`\<`string`, `any`\> |
132 |
133 | #### Returns
134 |
135 | [`KvDelta`](modelsv2.KvDelta.md)
136 |
137 | #### Defined in
138 |
139 | client/v2/algod/models/types.ts:3358
140 |
```
--------------------------------------------------------------------------------
/packages/server/src/tools/apiManager/tinyman/analytics.ts:
--------------------------------------------------------------------------------
```typescript
1 | import { Tool, ErrorCode, McpError } from '@modelcontextprotocol/sdk/types.js';
2 | import { poolUtils, SupportedNetwork } from '@tinymanorg/tinyman-js-sdk';
3 | import { algodClient } from '../../../algorand-client.js';
4 | import { env } from '../../../env.js';
5 |
6 | export const analyticsTools: Tool[] = [
7 | {
8 | name: 'api_tinyman_get_pool_analytics',
9 | description: 'Get analytics for a Tinyman pool',
10 | inputSchema: {
11 | type: 'object',
12 | properties: {
13 | asset1Id: {
14 | type: 'integer',
15 | description: 'ID of the first asset'
16 | },
17 | asset2Id: {
18 | type: 'integer',
19 | description: 'ID of the second asset'
20 | },
21 | version: {
22 | type: 'string',
23 | enum: ['v1_1', 'v2'],
24 | description: 'Tinyman protocol version',
25 | default: 'v2'
26 | }
27 | },
28 | required: ['asset1Id', 'asset2Id']
29 | }
30 | }
31 | ];
32 |
33 | export async function handleAnalyticsTools(args: any): Promise<any> {
34 | const {
35 | name,
36 | asset1Id,
37 | asset2Id,
38 | version = 'v2'
39 | } = args;
40 |
41 | if (name === 'api_tinyman_get_pool_analytics') {
42 | try {
43 | // Get pool information first
44 | const poolInfo = await (version === 'v2'
45 | ? poolUtils.v2.getPoolInfo({
46 | client: algodClient,
47 | network: env.algorand_network as SupportedNetwork,
48 | asset1ID: asset1Id,
49 | asset2ID: asset2Id
50 | })
51 | : poolUtils.v1_1.getPoolInfo({
52 | client: algodClient,
53 | network: env.algorand_network as SupportedNetwork,
54 | asset1ID: asset1Id,
55 | asset2ID: asset2Id
56 | }));
57 |
58 | // Get pool reserves
59 | const reserves = await (version === 'v2'
60 | ? poolUtils.v2.getPoolReserves(algodClient, poolInfo)
61 | : poolUtils.v1_1.getPoolReserves(algodClient, poolInfo));
62 |
63 | // Calculate pool analytics
64 | const isEmpty = poolUtils.isPoolEmpty(reserves);
65 | const pairRatio = poolUtils.getPoolPairRatio(reserves);
66 |
67 | const analytics = {
68 | status: poolInfo.status,
69 | isEmpty,
70 | pairRatio,
71 | reserves: {
72 | asset1: reserves.asset1.toString(),
73 | asset2: reserves.asset2.toString(),
74 | issuedLiquidity: reserves.issuedLiquidity.toString(),
75 | round: reserves.round
76 | }
77 | };
78 |
79 | return analytics;
80 | } catch (error) {
81 | throw new McpError(
82 | ErrorCode.InternalError,
83 | `Failed to get pool analytics: ${error instanceof Error ? error.message : String(error)}`
84 | );
85 | }
86 | }
87 |
88 | throw new McpError(
89 | ErrorCode.MethodNotFound,
90 | `Unknown analytics tool: ${name}`
91 | );
92 | }
93 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:indexerModels.ErrorResponse.md:
--------------------------------------------------------------------------------
```markdown
1 | [algosdk](../README.md) / [Exports](../modules.md) / [indexerModels](../modules/indexerModels.md) / ErrorResponse
2 |
3 | # Class: ErrorResponse
4 |
5 | [indexerModels](../modules/indexerModels.md).ErrorResponse
6 |
7 | Response for errors
8 |
9 | ## Hierarchy
10 |
11 | - `default`
12 |
13 | ↳ **`ErrorResponse`**
14 |
15 | ## Table of contents
16 |
17 | ### Constructors
18 |
19 | - [constructor](indexerModels.ErrorResponse.md#constructor)
20 |
21 | ### Properties
22 |
23 | - [attribute\_map](indexerModels.ErrorResponse.md#attribute_map)
24 | - [data](indexerModels.ErrorResponse.md#data)
25 | - [message](indexerModels.ErrorResponse.md#message)
26 |
27 | ### Methods
28 |
29 | - [get\_obj\_for\_encoding](indexerModels.ErrorResponse.md#get_obj_for_encoding)
30 | - [from\_obj\_for\_encoding](indexerModels.ErrorResponse.md#from_obj_for_encoding)
31 |
32 | ## Constructors
33 |
34 | ### constructor
35 |
36 | • **new ErrorResponse**(`«destructured»`)
37 |
38 | Creates a new `ErrorResponse` object.
39 |
40 | #### Parameters
41 |
42 | | Name | Type |
43 | | :------ | :------ |
44 | | `«destructured»` | `Object` |
45 | | › `data?` | `Record`\<`string`, `any`\> |
46 | | › `message` | `string` |
47 |
48 | #### Overrides
49 |
50 | BaseModel.constructor
51 |
52 | #### Defined in
53 |
54 | client/v2/indexer/models/types.ts:2922
55 |
56 | ## Properties
57 |
58 | ### attribute\_map
59 |
60 | • **attribute\_map**: `Record`\<`string`, `string`\>
61 |
62 | #### Inherited from
63 |
64 | BaseModel.attribute\_map
65 |
66 | #### Defined in
67 |
68 | client/v2/basemodel.ts:56
69 |
70 | ___
71 |
72 | ### data
73 |
74 | • `Optional` **data**: `Record`\<`string`, `any`\>
75 |
76 | #### Defined in
77 |
78 | client/v2/indexer/models/types.ts:2915
79 |
80 | ___
81 |
82 | ### message
83 |
84 | • **message**: `string`
85 |
86 | #### Defined in
87 |
88 | client/v2/indexer/models/types.ts:2913
89 |
90 | ## Methods
91 |
92 | ### get\_obj\_for\_encoding
93 |
94 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
95 |
96 | Get an object ready for encoding to either JSON or msgpack.
97 |
98 | #### Parameters
99 |
100 | | Name | Type | Default value | Description |
101 | | :------ | :------ | :------ | :------ |
102 | | `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. |
103 |
104 | #### Returns
105 |
106 | `Record`\<`string`, `any`\>
107 |
108 | #### Inherited from
109 |
110 | BaseModel.get\_obj\_for\_encoding
111 |
112 | #### Defined in
113 |
114 | client/v2/basemodel.ts:65
115 |
116 | ___
117 |
118 | ### from\_obj\_for\_encoding
119 |
120 | ▸ `Static` **from_obj_for_encoding**(`data`): [`ErrorResponse`](indexerModels.ErrorResponse.md)
121 |
122 | #### Parameters
123 |
124 | | Name | Type |
125 | | :------ | :------ |
126 | | `data` | `Record`\<`string`, `any`\> |
127 |
128 | #### Returns
129 |
130 | [`ErrorResponse`](indexerModels.ErrorResponse.md)
131 |
132 | #### Defined in
133 |
134 | client/v2/indexer/models/types.ts:2940
135 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/algokit:utils:python:source:capabilities:client.md:
--------------------------------------------------------------------------------
```markdown
1 | # Client management
2 |
3 | Client management is one of the core capabilities provided by AlgoKit Utils.
4 | It allows you to create [algod](https://developer.algorand.org/docs/rest-apis/algod), [indexer](https://developer.algorand.org/docs/rest-apis/indexer)
5 | and [kmd](https://developer.algorand.org/docs/rest-apis/kmd) clients against various networks resolved from environment or specified configuration.
6 |
7 | Any AlgoKit Utils function that needs one of these clients will take the underlying `algosdk` classes (`algosdk.v2client.algod.AlgodClient`, `algosdk.v2client.indexer.IndexerClient`,
8 | `algosdk.kmd.KMDClient`) so inline with the [Modularity](../index.md#core-principles) principle you can use existing logic to get instances of these clients without needing to use the
9 | Client management capability if you prefer.
10 |
11 | To see some usage examples check out the [automated tests](https://github.com/algorandfoundation/algokit-utils-py/blob/main/tests/test_network_clients.py).
12 |
13 | ## Network configuration
14 |
15 | The network configuration is specified using the `AlgoClientConfig` class. This same interface is used to specify the config for algod, indexer and kmd clients.
16 |
17 | There are a number of ways to produce one of these configuration objects:
18 |
19 | - Manually creating the object, e.g. `AlgoClientConfig(server="https://myalgodnode.com", token="SECRET_TOKEN")`
20 | - `algokit_utils.get_algonode_config(network, config, token)`: Loads an Algod or indexer config against [Nodely](https://nodely.io/docs/free/start) to either MainNet or TestNet
21 | - `algokit_utils.get_default_localnet_config(configOrPort)`: Loads an Algod, Indexer or Kmd config against [LocalNet](https://github.com/algorandfoundation/algokit-cli/blob/main/docs/features/localnet.md) using the default configuration
22 |
23 | ## Clients
24 |
25 | Once you have the configuration for a client, to get the client you can use the following functions:
26 |
27 | - `algokit_utils.get_algod_client(config)`: Returns an Algod client for the given configuration or if none is provided retrieves a configuration from the environment using `ALGOD_SERVER`, `ALGOD_TOKEN` and optionally `ALGOD_PORT`.
28 | - `algokit_utils.get_indexer_client(config)`: Returns an Indexer client for given configuration or if none is provided retrieves a configuration from the environment using `INDEXER_SERVER`, `INDEXER_TOKEN` and optionally `INDEXER_PORT`
29 | - `algokit_utils.get_kmd_client_from_algod_client(config)`: - Returns a Kmd client based on the provided algod client configuration, with the assumption the KMD services is running on the same host but a different port (either `KMD_PORT` environment variable or `4002` by default)
30 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/liquid-auth:docs:server:running-locally.md:
--------------------------------------------------------------------------------
```markdown
1 | ---
2 | title: 'Server: Running Locally'
3 | sidebar:
4 | order: 1
5 | label: "Running Locally"
6 | ---
7 |
8 | The Liquid Auth service is distributed as a Docker image. FIDO2 and WebRTC require a secure connection, we recommend [using ngrok](#ngrok) to create a secure tunnel to your local server.
9 | See the server [integrations](./integrations) guide for examples of how to add Liquid Auth to a web application.
10 |
11 | ### Prerequisites
12 |
13 | [Install Docker]() and [login to the GitHub Container Registry](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry#authenticating-with-a-personal-access-token-classic).
14 | ```bash
15 | export CR_PAT=<YOUR_TOKEN>
16 | echo $CR_PAT | docker login ghcr.io -u <USERNAME> --password-stdin
17 | ```
18 |
19 | ## Docker Image
20 |
21 | The service is designed to be run in a Docker container, it requires a [MongoDB]() and [Redis]() instance to be running.
22 | See the [Environment Variables](../environment-variables) section for more information about crafting a `.env.docker` file.
23 |
24 | ```bash
25 | docker run -d --env-file .env.docker -p 3000:3000 ghcr.io/algorandfoundation/liquid-auth:develop
26 | ```
27 |
28 | ### Compose Example
29 | > Example of using Docker Compose to run the Liquid Auth service.
30 |
31 | ```yaml
32 | #docker-compose.yml
33 | services:
34 | liquid-auth:
35 | image: ghcr.io/algorandfoundation/liquid-auth:develop
36 | env_file:
37 | - .env.docker
38 | ports:
39 | - "3000:3000"
40 | depends_on:
41 | - redis
42 | - mongo
43 | redis:
44 | image: redis
45 | ports:
46 | - "6379:6379"
47 | mongo:
48 | image: mongo:7.0
49 | environment:
50 | - MONGO_INITDB_DATABASE=${DB_NAME:-fido}
51 | - MONGO_INITDB_ROOT_USERNAME=${DB_USERNAME:-algorand}
52 | - MONGO_INITDB_ROOT_PASSWORD=${DB_PASSWORD:-algorand}
53 | ports:
54 | - "27017:27017"
55 | volumes:
56 | - mongo:/data/db
57 | volumes:
58 | mongo:
59 | ```
60 |
61 | ### Building
62 |
63 | Optionally, create the Docker image locally from the source:
64 |
65 | ```bash
66 | git clone [email protected]:algorandfoundation/liquid-auth.git && cd liquid-auth
67 | docker build -t my-amazing-liquid-auth:latest .
68 | ```
69 |
70 | ## NGROK
71 |
72 | Sign up for a free account at [ngrok](https://ngrok.com/) and follow the instructions to get your `<NGROK_AUTH_TOKEN>` and `<NGROK_STATIC_DOMAIN>`.
73 |
74 | #### Configuration
75 | ngrok will ask you to add your auth token to your configuration file.
76 |
77 | ``` bash
78 | ngrok config add-authtoken <NGROK_AUTH_TOKEN>
79 | ```
80 |
81 | It will then ask you to deploy your static domain, make sure to change the port to **3000** like this:
82 |
83 | ``` bash
84 | ngrok http --domain=<NGROK_STATIC_DOMAIN> 3000
85 | ```
86 |
87 |
88 | Ensure the service's `ORIGIN` and `HOSTNAME` [environment variables](../environment-variables) are configured correctly with the ngrok domain.
89 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/algokit:utils:typescript:code:interfaces:types_transaction.ConfirmedTransactionResults.md:
--------------------------------------------------------------------------------
```markdown
1 | [@algorandfoundation/algokit-utils](../README.md) / [types/transaction](../modules/types_transaction.md) / ConfirmedTransactionResults
2 |
3 | # Interface: ConfirmedTransactionResults
4 |
5 | [types/transaction](../modules/types_transaction.md).ConfirmedTransactionResults
6 |
7 | The result of sending and confirming one or more transactions, but where there is a primary transaction of interest
8 |
9 | ## Hierarchy
10 |
11 | - [`SendTransactionResult`](types_transaction.SendTransactionResult.md)
12 |
13 | - [`SendTransactionResults`](types_transaction.SendTransactionResults.md)
14 |
15 | ↳ **`ConfirmedTransactionResults`**
16 |
17 | ## Table of contents
18 |
19 | ### Properties
20 |
21 | - [confirmation](types_transaction.ConfirmedTransactionResults.md#confirmation)
22 | - [confirmations](types_transaction.ConfirmedTransactionResults.md#confirmations)
23 | - [transaction](types_transaction.ConfirmedTransactionResults.md#transaction)
24 | - [transactions](types_transaction.ConfirmedTransactionResults.md#transactions)
25 |
26 | ## Properties
27 |
28 | ### confirmation
29 |
30 | • **confirmation**: `PendingTransactionResponse`
31 |
32 | The response from sending and waiting for the primary transaction
33 |
34 | #### Overrides
35 |
36 | [SendTransactionResult](types_transaction.SendTransactionResult.md).[confirmation](types_transaction.SendTransactionResult.md#confirmation)
37 |
38 | #### Defined in
39 |
40 | [src/types/transaction.ts:93](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/transaction.ts#L93)
41 |
42 | ___
43 |
44 | ### confirmations
45 |
46 | • **confirmations**: `PendingTransactionResponse`[]
47 |
48 | The response from sending and waiting for the transactions
49 |
50 | #### Overrides
51 |
52 | [SendTransactionResults](types_transaction.SendTransactionResults.md).[confirmations](types_transaction.SendTransactionResults.md#confirmations)
53 |
54 | #### Defined in
55 |
56 | [src/types/transaction.ts:95](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/transaction.ts#L95)
57 |
58 | ___
59 |
60 | ### transaction
61 |
62 | • **transaction**: `Transaction`
63 |
64 | The transaction
65 |
66 | #### Inherited from
67 |
68 | [SendTransactionResult](types_transaction.SendTransactionResult.md).[transaction](types_transaction.SendTransactionResult.md#transaction)
69 |
70 | #### Defined in
71 |
72 | [src/types/transaction.ts:55](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/transaction.ts#L55)
73 |
74 | ___
75 |
76 | ### transactions
77 |
78 | • **transactions**: `Transaction`[]
79 |
80 | The transactions that have been prepared and/or sent
81 |
82 | #### Inherited from
83 |
84 | [SendTransactionResults](types_transaction.SendTransactionResults.md).[transactions](types_transaction.SendTransactionResults.md#transactions)
85 |
86 | #### Defined in
87 |
88 | [src/types/transaction.ts:63](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/transaction.ts#L63)
89 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/ARCs:specs:arc-0036.md:
--------------------------------------------------------------------------------
```markdown
1 | ---
2 | arc: 36
3 | title: Convention for declaring filters of an NFT
4 | description: This is a convention for declaring filters in an NFT metadata
5 | author: Stéphane Barroso (@sudoweezy)
6 | discussions-to: https://github.com/algorandfoundation/ARCs/issues/163
7 | status: Final
8 | type: Standards Track
9 | category: ARC
10 | sub-category: Asa
11 | created: 2023-03-10
12 | ---
13 |
14 | # Standard for declaring filters inside non-fungible token metadata
15 |
16 | ## Abstract
17 |
18 | The goal is to establish a standard for how filters are declared inside a non-fungible (NFT) metadata.
19 |
20 | ## Specification
21 |
22 | The key words "**MUST**", "**MUST NOT**", "**REQUIRED**", "**SHALL**", "**SHALL NOT**", "**SHOULD**", "**SHOULD NOT**", "**RECOMMENDED**", "**MAY**", and "**OPTIONAL**" in this document are to be interpreted as described in <a href="https://www.ietf.org/rfc/rfc2119.txt">RFC-2119</a>.
23 |
24 | > Comments like this are non-normative.
25 |
26 | If the property `filters` is provided anywhere in the metadata of an nft, it **MUST** adhere to the schema below.
27 | If the nft is a part of a larger collection and that collection has filters, all the available filters for the collection **MUST** be listed as a property of the `filters` object.
28 | If the nft does not have a particular filter, it's value **MUST** be "none".
29 |
30 | The JSON schema for `filters` is as follows:
31 |
32 | ```json
33 | {
34 | "title": "Filters for Non-Fungible Token",
35 | "type": "object",
36 | "properties": {
37 | "filters": {
38 | "type": "object",
39 | "description": "Filters can be used to filter nfts of a collection. Values must be an array of strings or numbers."
40 | }
41 | }
42 | }
43 | ```
44 |
45 | #### Examples
46 |
47 | ##### Example of an NFT that has traits & filters
48 |
49 | ```json
50 | {
51 | "name": "NFT With Traits & filters",
52 | "description": "NFT with traits & filters",
53 | "image": "https://s3.amazonaws.com/your-bucket/images/two.png",
54 | "image_integrity": "sha256-47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=",
55 | "properties": {
56 | "creator": "Tim Smith",
57 | "created_at": "January 2, 2022",
58 | "traits": {
59 | "background": "yellow",
60 | "head": "curly"
61 | },
62 | "filters": {
63 | "xp": 120,
64 | "state": "REM"
65 | }
66 | }
67 | }
68 | ```
69 |
70 | ## Rationale
71 |
72 | A standard for filters is needed so programs know what to expect in order to filter things without using rarity.
73 |
74 | ## Backwards Compatibility
75 |
76 | If `filters` wants to be added on top of fields [ARC-16](./arc-0016.md) `traits` and `filters` should be inside the `properties` object. (eg: [Example above](./arc-0036.md#example-of-an-nft-that-has-traits--filters))
77 |
78 | ## Security Considerations
79 |
80 | None.
81 |
82 | ## Copyright
83 |
84 | Copyright and related rights waived via <a href="https://creativecommons.org/publicdomain/zero/1.0/">CCO</a>.
85 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/ARCs:specs:arc-0022.md:
--------------------------------------------------------------------------------
```markdown
1 | ---
2 | arc: 22
3 | title: Add `read-only` annotation to ABI methods
4 | description: Convention for creating methods which don't mutate state
5 | author: ori-shem-tov (@ori-shem-tov)
6 | discussions-to: https://github.com/algorandfoundation/ARCs/issues/125
7 | status: Final
8 | type: Standards Track
9 | category: Interface
10 | sub-category: Application
11 | created: 2022-03-16
12 | requires: 4
13 | ---
14 |
15 | # Extend [ARC-4](./arc-0004.md) to add `read-only` annotation to methods
16 |
17 | The following document introduces a convention for creating methods (as described in [ARC-4](./arc-0004.md)) which don't mutate state.
18 |
19 | ## Abstract
20 |
21 | The goal of this convention is to allow smart contract developers to distinguish between methods which mutate state and methods which don't by introducing a new property to the `Method` descriptor.
22 |
23 | ## Specification
24 |
25 | The key words "**MUST**", "**MUST NOT**", "**REQUIRED**", "**SHALL**", "**SHALL NOT**", "**SHOULD**", "**SHOULD NOT**", "**RECOMMENDED**", "**MAY**", and "**OPTIONAL**" in this document are to be interpreted as described in <a href="https://www.ietf.org/rfc/rfc2119.txt">RFC-2119</a>.
26 |
27 | > Comments like this are non-normative.
28 |
29 | ### Read-only functions
30 |
31 | A `read-only` function is a function with no side-effects. In particular, a `read-only` function **SHOULD NOT** include:
32 | - local/global state modifications
33 | - calls to non `read-only` functions
34 | - inner-transactions
35 |
36 | It is **RECOMMENDED** for a `read-only` function to not access transactions in a group or metadata of the group.
37 |
38 | > The goal is to allow algod to easily execute `read-only` functions without broadcasting a transaction
39 |
40 | In order to support this annotation, the following `Method` descriptor is suggested:
41 | ```typescript
42 | interface Method {
43 | /** The name of the method */
44 | name: string;
45 | /** Optional, user-friendly description for the method */
46 | desc?: string;
47 | /** Optional, is it a read-only method (according to ARC-22) */
48 | readonly?: boolean
49 | /** The arguments of the method, in order */
50 | args: Array<{
51 | /** The type of the argument */
52 | type: string;
53 | /** Optional, user-friendly name for the argument */
54 | name?: string;
55 | /** Optional, user-friendly description for the argument */
56 | desc?: string;
57 | }>;
58 | /** Information about the method's return value */
59 | returns: {
60 | /** The type of the return value, or "void" to indicate no return value. */
61 | type: string;
62 | /** Optional, user-friendly description for the return value */
63 | desc?: string;
64 | };
65 | }
66 | ```
67 | ## Rationale
68 |
69 | ## Security Considerations
70 |
71 | None.
72 |
73 | ## Copyright
74 |
75 | Copyright and related rights waived via <a href="https://creativecommons.org/publicdomain/zero/1.0/">CCO</a>.
76 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:modelsv2.Application.md:
--------------------------------------------------------------------------------
```markdown
1 | [algosdk](../README.md) / [Exports](../modules.md) / [modelsv2](../modules/modelsv2.md) / Application
2 |
3 | # Class: Application
4 |
5 | [modelsv2](../modules/modelsv2.md).Application
6 |
7 | Application index and its parameters
8 |
9 | ## Hierarchy
10 |
11 | - `default`
12 |
13 | ↳ **`Application`**
14 |
15 | ## Table of contents
16 |
17 | ### Constructors
18 |
19 | - [constructor](modelsv2.Application.md#constructor)
20 |
21 | ### Properties
22 |
23 | - [attribute\_map](modelsv2.Application.md#attribute_map)
24 | - [id](modelsv2.Application.md#id)
25 | - [params](modelsv2.Application.md#params)
26 |
27 | ### Methods
28 |
29 | - [get\_obj\_for\_encoding](modelsv2.Application.md#get_obj_for_encoding)
30 | - [from\_obj\_for\_encoding](modelsv2.Application.md#from_obj_for_encoding)
31 |
32 | ## Constructors
33 |
34 | ### constructor
35 |
36 | • **new Application**(`«destructured»`)
37 |
38 | Creates a new `Application` object.
39 |
40 | #### Parameters
41 |
42 | | Name | Type |
43 | | :------ | :------ |
44 | | `«destructured»` | `Object` |
45 | | › `id` | `number` \| `bigint` |
46 | | › `params` | [`ApplicationParams`](modelsv2.ApplicationParams.md) |
47 |
48 | #### Overrides
49 |
50 | BaseModel.constructor
51 |
52 | #### Defined in
53 |
54 | client/v2/algod/models/types.ts:986
55 |
56 | ## Properties
57 |
58 | ### attribute\_map
59 |
60 | • **attribute\_map**: `Record`\<`string`, `string`\>
61 |
62 | #### Inherited from
63 |
64 | BaseModel.attribute\_map
65 |
66 | #### Defined in
67 |
68 | client/v2/basemodel.ts:56
69 |
70 | ___
71 |
72 | ### id
73 |
74 | • **id**: `number` \| `bigint`
75 |
76 | (appidx) application index.
77 |
78 | #### Defined in
79 |
80 | client/v2/algod/models/types.ts:974
81 |
82 | ___
83 |
84 | ### params
85 |
86 | • **params**: [`ApplicationParams`](modelsv2.ApplicationParams.md)
87 |
88 | (appparams) application parameters.
89 |
90 | #### Defined in
91 |
92 | client/v2/algod/models/types.ts:979
93 |
94 | ## Methods
95 |
96 | ### get\_obj\_for\_encoding
97 |
98 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
99 |
100 | Get an object ready for encoding to either JSON or msgpack.
101 |
102 | #### Parameters
103 |
104 | | Name | Type | Default value | Description |
105 | | :------ | :------ | :------ | :------ |
106 | | `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. |
107 |
108 | #### Returns
109 |
110 | `Record`\<`string`, `any`\>
111 |
112 | #### Inherited from
113 |
114 | BaseModel.get\_obj\_for\_encoding
115 |
116 | #### Defined in
117 |
118 | client/v2/basemodel.ts:65
119 |
120 | ___
121 |
122 | ### from\_obj\_for\_encoding
123 |
124 | ▸ `Static` **from_obj_for_encoding**(`data`): [`Application`](modelsv2.Application.md)
125 |
126 | #### Parameters
127 |
128 | | Name | Type |
129 | | :------ | :------ |
130 | | `data` | `Record`\<`string`, `any`\> |
131 |
132 | #### Returns
133 |
134 | [`Application`](modelsv2.Application.md)
135 |
136 | #### Defined in
137 |
138 | client/v2/algod/models/types.ts:1004
139 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/puya:typescript:docs:README.md:
--------------------------------------------------------------------------------
```markdown
1 | # Algorand TypeScript
2 |
3 | Algorand TypeScript is a partial implementation of the TypeScript programming language that runs on the Algorand Virtual Machine (AVM). It includes a statically typed framework for development of Algorand smart contracts and logic signatures, with TypeScript interfaces to underlying AVM functionality that works with standard TypeScript tooling.
4 |
5 | It maintains the syntax and semantics of TypeScript such that a developer who knows TypeScript can make safe assumptions
6 | about the behaviour of the compiled code when running on the AVM. Algorand TypeScript is also executable TypeScript that can be run
7 | and debugged on a Node.js virtual machine with transpilation to EcmaScript and run from automated tests.
8 |
9 | # Guiding Principals
10 |
11 | ## Familiarity
12 |
13 | Where the base language (TypeScript/EcmaScript) doesn't support a given feature natively (eg. unsigned fixed size integers),
14 | prior art should be used to inspire an API that is familiar to a user of the base language and transpilation can be used to
15 | ensure this code executes correctly.
16 |
17 | ## Leveraging TypeScript type system
18 |
19 | TypeScript's type system should be used where ever possible to ensure code is type safe before compilation to create a fast
20 | feedback loop and nudge users into the [pit of success](https://blog.codinghorror.com/falling-into-the-pit-of-success/).
21 |
22 | ## TEALScript compatibility
23 |
24 | [TEALScript](https://github.com/algorandfoundation/tealscript/) is an existing TypeScript-like language to TEAL compiler however the source code is not executable TypeScript, and it does not prioritise semantic compatibility. Wherever possible, Algorand TypeScript should endeavour to be compatible with existing TEALScript contracts and where not possible migratable with minimal changes.
25 |
26 | ## Algorand Python
27 |
28 | [Algorand Python](https://algorandfoundation.github.io/puya/) is the Python equivalent of Algorand TypeScript. Whilst there is a primary goal to produce an API which makes sense in the TypeScript ecosystem, a secondary goal is to minimise the disparity between the two APIs such that users who choose to, or are required to develop on both platforms are not facing a completely unfamiliar API.
29 |
30 | # Architecture decisions
31 |
32 | As part of developing Algorand TypeScript we are documenting key architecture decisions using [Architecture Decision Records (ADRs)](https://adr.github.io/). The following are the key decisions that have been made thus far:
33 |
34 | - [2024-05-21: Primitive integer types](./architecture-decisions/2024-05-21_primitive-integer-types.md)
35 | - [2024-05-21: Primitive byte and string types](./architecture-decisions/2024-05-21_primitive-bytes-and-strings.md)
36 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:modelsv2.EvalDeltaKeyValue.md:
--------------------------------------------------------------------------------
```markdown
1 | [algosdk](../README.md) / [Exports](../modules.md) / [modelsv2](../modules/modelsv2.md) / EvalDeltaKeyValue
2 |
3 | # Class: EvalDeltaKeyValue
4 |
5 | [modelsv2](../modules/modelsv2.md).EvalDeltaKeyValue
6 |
7 | Key-value pairs for StateDelta.
8 |
9 | ## Hierarchy
10 |
11 | - `default`
12 |
13 | ↳ **`EvalDeltaKeyValue`**
14 |
15 | ## Table of contents
16 |
17 | ### Constructors
18 |
19 | - [constructor](modelsv2.EvalDeltaKeyValue.md#constructor)
20 |
21 | ### Properties
22 |
23 | - [attribute\_map](modelsv2.EvalDeltaKeyValue.md#attribute_map)
24 | - [key](modelsv2.EvalDeltaKeyValue.md#key)
25 | - [value](modelsv2.EvalDeltaKeyValue.md#value)
26 |
27 | ### Methods
28 |
29 | - [get\_obj\_for\_encoding](modelsv2.EvalDeltaKeyValue.md#get_obj_for_encoding)
30 | - [from\_obj\_for\_encoding](modelsv2.EvalDeltaKeyValue.md#from_obj_for_encoding)
31 |
32 | ## Constructors
33 |
34 | ### constructor
35 |
36 | • **new EvalDeltaKeyValue**(`«destructured»`)
37 |
38 | Creates a new `EvalDeltaKeyValue` object.
39 |
40 | #### Parameters
41 |
42 | | Name | Type |
43 | | :------ | :------ |
44 | | `«destructured»` | `Object` |
45 | | › `key` | `string` |
46 | | › `value` | [`EvalDelta`](modelsv2.EvalDelta.md) |
47 |
48 | #### Overrides
49 |
50 | BaseModel.constructor
51 |
52 | #### Defined in
53 |
54 | client/v2/algod/models/types.ts:3216
55 |
56 | ## Properties
57 |
58 | ### attribute\_map
59 |
60 | • **attribute\_map**: `Record`\<`string`, `string`\>
61 |
62 | #### Inherited from
63 |
64 | BaseModel.attribute\_map
65 |
66 | #### Defined in
67 |
68 | client/v2/basemodel.ts:56
69 |
70 | ___
71 |
72 | ### key
73 |
74 | • **key**: `string`
75 |
76 | #### Defined in
77 |
78 | client/v2/algod/models/types.ts:3204
79 |
80 | ___
81 |
82 | ### value
83 |
84 | • **value**: [`EvalDelta`](modelsv2.EvalDelta.md)
85 |
86 | Represents a TEAL value delta.
87 |
88 | #### Defined in
89 |
90 | client/v2/algod/models/types.ts:3209
91 |
92 | ## Methods
93 |
94 | ### get\_obj\_for\_encoding
95 |
96 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
97 |
98 | Get an object ready for encoding to either JSON or msgpack.
99 |
100 | #### Parameters
101 |
102 | | Name | Type | Default value | Description |
103 | | :------ | :------ | :------ | :------ |
104 | | `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. |
105 |
106 | #### Returns
107 |
108 | `Record`\<`string`, `any`\>
109 |
110 | #### Inherited from
111 |
112 | BaseModel.get\_obj\_for\_encoding
113 |
114 | #### Defined in
115 |
116 | client/v2/basemodel.ts:65
117 |
118 | ___
119 |
120 | ### from\_obj\_for\_encoding
121 |
122 | ▸ `Static` **from_obj_for_encoding**(`data`): [`EvalDeltaKeyValue`](modelsv2.EvalDeltaKeyValue.md)
123 |
124 | #### Parameters
125 |
126 | | Name | Type |
127 | | :------ | :------ |
128 | | `data` | `Record`\<`string`, `any`\> |
129 |
130 | #### Returns
131 |
132 | [`EvalDeltaKeyValue`](modelsv2.EvalDeltaKeyValue.md)
133 |
134 | #### Defined in
135 |
136 | client/v2/algod/models/types.ts:3228
137 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:modelsv2.ScratchChange.md:
--------------------------------------------------------------------------------
```markdown
1 | [algosdk](../README.md) / [Exports](../modules.md) / [modelsv2](../modules/modelsv2.md) / ScratchChange
2 |
3 | # Class: ScratchChange
4 |
5 | [modelsv2](../modules/modelsv2.md).ScratchChange
6 |
7 | A write operation into a scratch slot.
8 |
9 | ## Hierarchy
10 |
11 | - `default`
12 |
13 | ↳ **`ScratchChange`**
14 |
15 | ## Table of contents
16 |
17 | ### Constructors
18 |
19 | - [constructor](modelsv2.ScratchChange.md#constructor)
20 |
21 | ### Properties
22 |
23 | - [attribute\_map](modelsv2.ScratchChange.md#attribute_map)
24 | - [newValue](modelsv2.ScratchChange.md#newvalue)
25 | - [slot](modelsv2.ScratchChange.md#slot)
26 |
27 | ### Methods
28 |
29 | - [get\_obj\_for\_encoding](modelsv2.ScratchChange.md#get_obj_for_encoding)
30 | - [from\_obj\_for\_encoding](modelsv2.ScratchChange.md#from_obj_for_encoding)
31 |
32 | ## Constructors
33 |
34 | ### constructor
35 |
36 | • **new ScratchChange**(`«destructured»`)
37 |
38 | Creates a new `ScratchChange` object.
39 |
40 | #### Parameters
41 |
42 | | Name | Type |
43 | | :------ | :------ |
44 | | `«destructured»` | `Object` |
45 | | › `newValue` | [`AvmValue`](modelsv2.AvmValue.md) |
46 | | › `slot` | `number` \| `bigint` |
47 |
48 | #### Overrides
49 |
50 | BaseModel.constructor
51 |
52 | #### Defined in
53 |
54 | client/v2/algod/models/types.ts:4173
55 |
56 | ## Properties
57 |
58 | ### attribute\_map
59 |
60 | • **attribute\_map**: `Record`\<`string`, `string`\>
61 |
62 | #### Inherited from
63 |
64 | BaseModel.attribute\_map
65 |
66 | #### Defined in
67 |
68 | client/v2/basemodel.ts:56
69 |
70 | ___
71 |
72 | ### newValue
73 |
74 | • **newValue**: [`AvmValue`](modelsv2.AvmValue.md)
75 |
76 | Represents an AVM value.
77 |
78 | #### Defined in
79 |
80 | client/v2/algod/models/types.ts:4161
81 |
82 | ___
83 |
84 | ### slot
85 |
86 | • **slot**: `number` \| `bigint`
87 |
88 | The scratch slot written.
89 |
90 | #### Defined in
91 |
92 | client/v2/algod/models/types.ts:4166
93 |
94 | ## Methods
95 |
96 | ### get\_obj\_for\_encoding
97 |
98 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
99 |
100 | Get an object ready for encoding to either JSON or msgpack.
101 |
102 | #### Parameters
103 |
104 | | Name | Type | Default value | Description |
105 | | :------ | :------ | :------ | :------ |
106 | | `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. |
107 |
108 | #### Returns
109 |
110 | `Record`\<`string`, `any`\>
111 |
112 | #### Inherited from
113 |
114 | BaseModel.get\_obj\_for\_encoding
115 |
116 | #### Defined in
117 |
118 | client/v2/basemodel.ts:65
119 |
120 | ___
121 |
122 | ### from\_obj\_for\_encoding
123 |
124 | ▸ `Static` **from_obj_for_encoding**(`data`): [`ScratchChange`](modelsv2.ScratchChange.md)
125 |
126 | #### Parameters
127 |
128 | | Name | Type |
129 | | :------ | :------ |
130 | | `data` | `Record`\<`string`, `any`\> |
131 |
132 | #### Returns
133 |
134 | [`ScratchChange`](modelsv2.ScratchChange.md)
135 |
136 | #### Defined in
137 |
138 | client/v2/algod/models/types.ts:4191
139 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:modelsv2.BlockResponse.md:
--------------------------------------------------------------------------------
```markdown
1 | [algosdk](../README.md) / [Exports](../modules.md) / [modelsv2](../modules/modelsv2.md) / BlockResponse
2 |
3 | # Class: BlockResponse
4 |
5 | [modelsv2](../modules/modelsv2.md).BlockResponse
6 |
7 | Encoded block object.
8 |
9 | ## Hierarchy
10 |
11 | - `default`
12 |
13 | ↳ **`BlockResponse`**
14 |
15 | ## Table of contents
16 |
17 | ### Constructors
18 |
19 | - [constructor](modelsv2.BlockResponse.md#constructor)
20 |
21 | ### Properties
22 |
23 | - [attribute\_map](modelsv2.BlockResponse.md#attribute_map)
24 | - [block](modelsv2.BlockResponse.md#block)
25 | - [cert](modelsv2.BlockResponse.md#cert)
26 |
27 | ### Methods
28 |
29 | - [get\_obj\_for\_encoding](modelsv2.BlockResponse.md#get_obj_for_encoding)
30 | - [from\_obj\_for\_encoding](modelsv2.BlockResponse.md#from_obj_for_encoding)
31 |
32 | ## Constructors
33 |
34 | ### constructor
35 |
36 | • **new BlockResponse**(`«destructured»`)
37 |
38 | Creates a new `BlockResponse` object.
39 |
40 | #### Parameters
41 |
42 | | Name | Type |
43 | | :------ | :------ |
44 | | `«destructured»` | `Object` |
45 | | › `block` | `default` |
46 | | › `cert?` | `Record`\<`string`, `any`\> |
47 |
48 | #### Overrides
49 |
50 | BaseModel.constructor
51 |
52 | #### Defined in
53 |
54 | client/v2/algod/models/types.ts:2161
55 |
56 | ## Properties
57 |
58 | ### attribute\_map
59 |
60 | • **attribute\_map**: `Record`\<`string`, `string`\>
61 |
62 | #### Inherited from
63 |
64 | BaseModel.attribute\_map
65 |
66 | #### Defined in
67 |
68 | client/v2/basemodel.ts:56
69 |
70 | ___
71 |
72 | ### block
73 |
74 | • **block**: `default`
75 |
76 | Block header data.
77 |
78 | #### Defined in
79 |
80 | client/v2/algod/models/types.ts:2147
81 |
82 | ___
83 |
84 | ### cert
85 |
86 | • `Optional` **cert**: `Record`\<`string`, `any`\>
87 |
88 | Optional certificate object. This is only included when the format is set to
89 | message pack.
90 |
91 | #### Defined in
92 |
93 | client/v2/algod/models/types.ts:2153
94 |
95 | ## Methods
96 |
97 | ### get\_obj\_for\_encoding
98 |
99 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
100 |
101 | Get an object ready for encoding to either JSON or msgpack.
102 |
103 | #### Parameters
104 |
105 | | Name | Type | Default value | Description |
106 | | :------ | :------ | :------ | :------ |
107 | | `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. |
108 |
109 | #### Returns
110 |
111 | `Record`\<`string`, `any`\>
112 |
113 | #### Inherited from
114 |
115 | BaseModel.get\_obj\_for\_encoding
116 |
117 | #### Defined in
118 |
119 | client/v2/basemodel.ts:65
120 |
121 | ___
122 |
123 | ### from\_obj\_for\_encoding
124 |
125 | ▸ `Static` **from_obj_for_encoding**(`data`): [`BlockResponse`](modelsv2.BlockResponse.md)
126 |
127 | #### Parameters
128 |
129 | | Name | Type |
130 | | :------ | :------ |
131 | | `data` | `Record`\<`string`, `any`\> |
132 |
133 | #### Returns
134 |
135 | [`BlockResponse`](modelsv2.BlockResponse.md)
136 |
137 | #### Defined in
138 |
139 | client/v2/algod/models/types.ts:2179
140 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:indexerModels.TealKeyValue.md:
--------------------------------------------------------------------------------
```markdown
1 | [algosdk](../README.md) / [Exports](../modules.md) / [indexerModels](../modules/indexerModels.md) / TealKeyValue
2 |
3 | # Class: TealKeyValue
4 |
5 | [indexerModels](../modules/indexerModels.md).TealKeyValue
6 |
7 | Represents a key-value pair in an application store.
8 |
9 | ## Hierarchy
10 |
11 | - `default`
12 |
13 | ↳ **`TealKeyValue`**
14 |
15 | ## Table of contents
16 |
17 | ### Constructors
18 |
19 | - [constructor](indexerModels.TealKeyValue.md#constructor)
20 |
21 | ### Properties
22 |
23 | - [attribute\_map](indexerModels.TealKeyValue.md#attribute_map)
24 | - [key](indexerModels.TealKeyValue.md#key)
25 | - [value](indexerModels.TealKeyValue.md#value)
26 |
27 | ### Methods
28 |
29 | - [get\_obj\_for\_encoding](indexerModels.TealKeyValue.md#get_obj_for_encoding)
30 | - [from\_obj\_for\_encoding](indexerModels.TealKeyValue.md#from_obj_for_encoding)
31 |
32 | ## Constructors
33 |
34 | ### constructor
35 |
36 | • **new TealKeyValue**(`«destructured»`)
37 |
38 | Creates a new `TealKeyValue` object.
39 |
40 | #### Parameters
41 |
42 | | Name | Type |
43 | | :------ | :------ |
44 | | `«destructured»` | `Object` |
45 | | › `key` | `string` |
46 | | › `value` | [`TealValue`](indexerModels.TealValue.md) |
47 |
48 | #### Overrides
49 |
50 | BaseModel.constructor
51 |
52 | #### Defined in
53 |
54 | client/v2/indexer/models/types.ts:3994
55 |
56 | ## Properties
57 |
58 | ### attribute\_map
59 |
60 | • **attribute\_map**: `Record`\<`string`, `string`\>
61 |
62 | #### Inherited from
63 |
64 | BaseModel.attribute\_map
65 |
66 | #### Defined in
67 |
68 | client/v2/basemodel.ts:56
69 |
70 | ___
71 |
72 | ### key
73 |
74 | • **key**: `string`
75 |
76 | #### Defined in
77 |
78 | client/v2/indexer/models/types.ts:3982
79 |
80 | ___
81 |
82 | ### value
83 |
84 | • **value**: [`TealValue`](indexerModels.TealValue.md)
85 |
86 | Represents a TEAL value.
87 |
88 | #### Defined in
89 |
90 | client/v2/indexer/models/types.ts:3987
91 |
92 | ## Methods
93 |
94 | ### get\_obj\_for\_encoding
95 |
96 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
97 |
98 | Get an object ready for encoding to either JSON or msgpack.
99 |
100 | #### Parameters
101 |
102 | | Name | Type | Default value | Description |
103 | | :------ | :------ | :------ | :------ |
104 | | `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. |
105 |
106 | #### Returns
107 |
108 | `Record`\<`string`, `any`\>
109 |
110 | #### Inherited from
111 |
112 | BaseModel.get\_obj\_for\_encoding
113 |
114 | #### Defined in
115 |
116 | client/v2/basemodel.ts:65
117 |
118 | ___
119 |
120 | ### from\_obj\_for\_encoding
121 |
122 | ▸ `Static` **from_obj_for_encoding**(`data`): [`TealKeyValue`](indexerModels.TealKeyValue.md)
123 |
124 | #### Parameters
125 |
126 | | Name | Type |
127 | | :------ | :------ |
128 | | `data` | `Record`\<`string`, `any`\> |
129 |
130 | #### Returns
131 |
132 | [`TealKeyValue`](indexerModels.TealKeyValue.md)
133 |
134 | #### Defined in
135 |
136 | client/v2/indexer/models/types.ts:4006
137 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:modelsv2.Box.md:
--------------------------------------------------------------------------------
```markdown
1 | [algosdk](../README.md) / [Exports](../modules.md) / [modelsv2](../modules/modelsv2.md) / Box
2 |
3 | # Class: Box
4 |
5 | [modelsv2](../modules/modelsv2.md).Box
6 |
7 | Box name and its content.
8 |
9 | ## Hierarchy
10 |
11 | - `default`
12 |
13 | ↳ **`Box`**
14 |
15 | ## Table of contents
16 |
17 | ### Constructors
18 |
19 | - [constructor](modelsv2.Box.md#constructor)
20 |
21 | ### Properties
22 |
23 | - [attribute\_map](modelsv2.Box.md#attribute_map)
24 | - [name](modelsv2.Box.md#name)
25 | - [round](modelsv2.Box.md#round)
26 | - [value](modelsv2.Box.md#value)
27 |
28 | ### Methods
29 |
30 | - [get\_obj\_for\_encoding](modelsv2.Box.md#get_obj_for_encoding)
31 | - [from\_obj\_for\_encoding](modelsv2.Box.md#from_obj_for_encoding)
32 |
33 | ## Constructors
34 |
35 | ### constructor
36 |
37 | • **new Box**(`«destructured»`)
38 |
39 | Creates a new `Box` object.
40 |
41 | #### Parameters
42 |
43 | | Name | Type |
44 | | :------ | :------ |
45 | | `«destructured»` | `Object` |
46 | | › `name` | `string` \| `Uint8Array` |
47 | | › `round` | `number` \| `bigint` |
48 | | › `value` | `string` \| `Uint8Array` |
49 |
50 | #### Overrides
51 |
52 | BaseModel.constructor
53 |
54 | #### Defined in
55 |
56 | client/v2/algod/models/types.ts:2252
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 | ### name
75 |
76 | • **name**: `Uint8Array`
77 |
78 | (name) box name, base64 encoded
79 |
80 | #### Defined in
81 |
82 | client/v2/algod/models/types.ts:2234
83 |
84 | ___
85 |
86 | ### round
87 |
88 | • **round**: `number` \| `bigint`
89 |
90 | The round for which this information is relevant
91 |
92 | #### Defined in
93 |
94 | client/v2/algod/models/types.ts:2239
95 |
96 | ___
97 |
98 | ### value
99 |
100 | • **value**: `Uint8Array`
101 |
102 | (value) box value, base64 encoded.
103 |
104 | #### Defined in
105 |
106 | client/v2/algod/models/types.ts:2244
107 |
108 | ## Methods
109 |
110 | ### get\_obj\_for\_encoding
111 |
112 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
113 |
114 | Get an object ready for encoding to either JSON or msgpack.
115 |
116 | #### Parameters
117 |
118 | | Name | Type | Default value | Description |
119 | | :------ | :------ | :------ | :------ |
120 | | `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. |
121 |
122 | #### Returns
123 |
124 | `Record`\<`string`, `any`\>
125 |
126 | #### Inherited from
127 |
128 | BaseModel.get\_obj\_for\_encoding
129 |
130 | #### Defined in
131 |
132 | client/v2/basemodel.ts:65
133 |
134 | ___
135 |
136 | ### from\_obj\_for\_encoding
137 |
138 | ▸ `Static` **from_obj_for_encoding**(`data`): [`Box`](modelsv2.Box.md)
139 |
140 | #### Parameters
141 |
142 | | Name | Type |
143 | | :------ | :------ |
144 | | `data` | `Record`\<`string`, `any`\> |
145 |
146 | #### Returns
147 |
148 | [`Box`](modelsv2.Box.md)
149 |
150 | #### Defined in
151 |
152 | client/v2/algod/models/types.ts:2280
153 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/developers-algokit-cli.txt:
--------------------------------------------------------------------------------
```
1 | algokit:cli:articles:output_stability.md
2 | algokit:cli:features:localnet.md
3 | algokit:cli:features:compile.md
4 | algokit:cli:features:explore.md
5 | algokit:cli:features:tasks:mint.md
6 | algokit:cli:features:tasks:vanity_address.md
7 | algokit:cli:features:tasks:ipfs.md
8 | algokit:cli:features:tasks:transfer.md
9 | algokit:cli:features:tasks:wallet.md
10 | algokit:cli:features:tasks:analyze.md
11 | algokit:cli:features:tasks:sign.md
12 | algokit:cli:features:tasks:nfd.md
13 | algokit:cli:features:tasks:opt.md
14 | algokit:cli:features:tasks:send.md
15 | algokit:cli:features:completions.md
16 | algokit:cli:features:doctor.md
17 | algokit:cli:features:project.md
18 | algokit:cli:features:goal.md
19 | algokit:cli:features:init.md
20 | algokit:cli:features:config.md
21 | algokit:cli:features:project:list.md
22 | algokit:cli:features:project:deploy.md
23 | algokit:cli:features:project:link.md
24 | algokit:cli:features:project:bootstrap.md
25 | algokit:cli:features:project:run.md
26 | algokit:cli:features:tasks.md
27 | algokit:cli:features:generate.md
28 | algokit:cli:features:dispenser.md
29 | algokit:cli:cli:index.md
30 | algokit:cli:sphinx:index.rst
31 | algokit:cli:tutorials:intro.md
32 | algokit:cli:tutorials:smart-contracts.md
33 | algokit:cli:tutorials:algokit-template.md
34 | algokit:cli:algokit.md
35 | algokit-cli:README.md
36 | algokit:lora:README.md
37 | algokit:docs:testnet_api.md
38 | algokit:README.md
39 | developer:docs:details:algokit:articles:output_stability.md
40 | developer:docs:details:algokit:features:localnet.md
41 | developer:docs:details:algokit:features:explore.md
42 | developer:docs:details:algokit:features:tasks:mint.md
43 | developer:docs:details:algokit:features:tasks:vanity_address.md
44 | developer:docs:details:algokit:features:tasks:ipfs.md
45 | developer:docs:details:algokit:features:tasks:transfer.md
46 | developer:docs:details:algokit:features:tasks:wallet.md
47 | developer:docs:details:algokit:features:tasks:analyze.md
48 | developer:docs:details:algokit:features:tasks:sign.md
49 | developer:docs:details:algokit:features:tasks:nfd.md
50 | developer:docs:details:algokit:features:tasks:opt.md
51 | developer:docs:details:algokit:features:tasks:send.md
52 | developer:docs:details:algokit:features:completions.md
53 | developer:docs:details:algokit:features:doctor.md
54 | developer:docs:details:algokit:features:goal.md
55 | developer:docs:details:algokit:features:init.md
56 | developer:docs:details:algokit:features:deploy.md
57 | developer:docs:details:algokit:features:tasks.md
58 | developer:docs:details:algokit:features:generate.md
59 | developer:docs:details:algokit:features:dispenser.md
60 | developer:docs:details:algokit:features:bootstrap.md
61 | developer:docs:details:algokit:index.md
62 | developer:docs:details:algokit:tutorials:intro.md
63 | developer:docs:details:algokit:tutorials:algokit-template.md
64 | developer:docs:details:algokit:cli-reference.md
65 | developer:docs:details:algokit.md
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:modelsv2.Asset.md:
--------------------------------------------------------------------------------
```markdown
1 | [algosdk](../README.md) / [Exports](../modules.md) / [modelsv2](../modules/modelsv2.md) / Asset
2 |
3 | # Class: Asset
4 |
5 | [modelsv2](../modules/modelsv2.md).Asset
6 |
7 | Specifies both the unique identifier and the parameters for an asset
8 |
9 | ## Hierarchy
10 |
11 | - `default`
12 |
13 | ↳ **`Asset`**
14 |
15 | ## Table of contents
16 |
17 | ### Constructors
18 |
19 | - [constructor](modelsv2.Asset.md#constructor)
20 |
21 | ### Properties
22 |
23 | - [attribute\_map](modelsv2.Asset.md#attribute_map)
24 | - [index](modelsv2.Asset.md#index)
25 | - [params](modelsv2.Asset.md#params)
26 |
27 | ### Methods
28 |
29 | - [get\_obj\_for\_encoding](modelsv2.Asset.md#get_obj_for_encoding)
30 | - [from\_obj\_for\_encoding](modelsv2.Asset.md#from_obj_for_encoding)
31 |
32 | ## Constructors
33 |
34 | ### constructor
35 |
36 | • **new Asset**(`«destructured»`)
37 |
38 | Creates a new `Asset` object.
39 |
40 | #### Parameters
41 |
42 | | Name | Type |
43 | | :------ | :------ |
44 | | `«destructured»` | `Object` |
45 | | › `index` | `number` \| `bigint` |
46 | | › `params` | [`AssetParams`](modelsv2.AssetParams.md) |
47 |
48 | #### Overrides
49 |
50 | BaseModel.constructor
51 |
52 | #### Defined in
53 |
54 | client/v2/algod/models/types.ts:1577
55 |
56 | ## Properties
57 |
58 | ### attribute\_map
59 |
60 | • **attribute\_map**: `Record`\<`string`, `string`\>
61 |
62 | #### Inherited from
63 |
64 | BaseModel.attribute\_map
65 |
66 | #### Defined in
67 |
68 | client/v2/basemodel.ts:56
69 |
70 | ___
71 |
72 | ### index
73 |
74 | • **index**: `number` \| `bigint`
75 |
76 | unique asset identifier
77 |
78 | #### Defined in
79 |
80 | client/v2/algod/models/types.ts:1559
81 |
82 | ___
83 |
84 | ### params
85 |
86 | • **params**: [`AssetParams`](modelsv2.AssetParams.md)
87 |
88 | AssetParams specifies the parameters for an asset.
89 | (apar) when part of an AssetConfig transaction.
90 | Definition:
91 | data/transactions/asset.go : AssetParams
92 |
93 | #### Defined in
94 |
95 | client/v2/algod/models/types.ts:1567
96 |
97 | ## Methods
98 |
99 | ### get\_obj\_for\_encoding
100 |
101 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
102 |
103 | Get an object ready for encoding to either JSON or msgpack.
104 |
105 | #### Parameters
106 |
107 | | Name | Type | Default value | Description |
108 | | :------ | :------ | :------ | :------ |
109 | | `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. |
110 |
111 | #### Returns
112 |
113 | `Record`\<`string`, `any`\>
114 |
115 | #### Inherited from
116 |
117 | BaseModel.get\_obj\_for\_encoding
118 |
119 | #### Defined in
120 |
121 | client/v2/basemodel.ts:65
122 |
123 | ___
124 |
125 | ### from\_obj\_for\_encoding
126 |
127 | ▸ `Static` **from_obj_for_encoding**(`data`): [`Asset`](modelsv2.Asset.md)
128 |
129 | #### Parameters
130 |
131 | | Name | Type |
132 | | :------ | :------ |
133 | | `data` | `Record`\<`string`, `any`\> |
134 |
135 | #### Returns
136 |
137 | [`Asset`](modelsv2.Asset.md)
138 |
139 | #### Defined in
140 |
141 | client/v2/algod/models/types.ts:1595
142 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:modelsv2.AccountStateDelta.md:
--------------------------------------------------------------------------------
```markdown
1 | [algosdk](../README.md) / [Exports](../modules.md) / [modelsv2](../modules/modelsv2.md) / AccountStateDelta
2 |
3 | # Class: AccountStateDelta
4 |
5 | [modelsv2](../modules/modelsv2.md).AccountStateDelta
6 |
7 | Application state delta.
8 |
9 | ## Hierarchy
10 |
11 | - `default`
12 |
13 | ↳ **`AccountStateDelta`**
14 |
15 | ## Table of contents
16 |
17 | ### Constructors
18 |
19 | - [constructor](modelsv2.AccountStateDelta.md#constructor)
20 |
21 | ### Properties
22 |
23 | - [address](modelsv2.AccountStateDelta.md#address)
24 | - [attribute\_map](modelsv2.AccountStateDelta.md#attribute_map)
25 | - [delta](modelsv2.AccountStateDelta.md#delta)
26 |
27 | ### Methods
28 |
29 | - [get\_obj\_for\_encoding](modelsv2.AccountStateDelta.md#get_obj_for_encoding)
30 | - [from\_obj\_for\_encoding](modelsv2.AccountStateDelta.md#from_obj_for_encoding)
31 |
32 | ## Constructors
33 |
34 | ### constructor
35 |
36 | • **new AccountStateDelta**(`«destructured»`)
37 |
38 | Creates a new `AccountStateDelta` object.
39 |
40 | #### Parameters
41 |
42 | | Name | Type |
43 | | :------ | :------ |
44 | | `«destructured»` | `Object` |
45 | | › `address` | `string` |
46 | | › `delta` | [`EvalDeltaKeyValue`](modelsv2.EvalDeltaKeyValue.md)[] |
47 |
48 | #### Overrides
49 |
50 | BaseModel.constructor
51 |
52 | #### Defined in
53 |
54 | client/v2/algod/models/types.ts:864
55 |
56 | ## Properties
57 |
58 | ### address
59 |
60 | • **address**: `string`
61 |
62 | #### Defined in
63 |
64 | client/v2/algod/models/types.ts:852
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 | ### delta
83 |
84 | • **delta**: [`EvalDeltaKeyValue`](modelsv2.EvalDeltaKeyValue.md)[]
85 |
86 | Application state delta.
87 |
88 | #### Defined in
89 |
90 | client/v2/algod/models/types.ts:857
91 |
92 | ## Methods
93 |
94 | ### get\_obj\_for\_encoding
95 |
96 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
97 |
98 | Get an object ready for encoding to either JSON or msgpack.
99 |
100 | #### Parameters
101 |
102 | | Name | Type | Default value | Description |
103 | | :------ | :------ | :------ | :------ |
104 | | `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. |
105 |
106 | #### Returns
107 |
108 | `Record`\<`string`, `any`\>
109 |
110 | #### Inherited from
111 |
112 | BaseModel.get\_obj\_for\_encoding
113 |
114 | #### Defined in
115 |
116 | client/v2/basemodel.ts:65
117 |
118 | ___
119 |
120 | ### from\_obj\_for\_encoding
121 |
122 | ▸ `Static` **from_obj_for_encoding**(`data`): [`AccountStateDelta`](modelsv2.AccountStateDelta.md)
123 |
124 | #### Parameters
125 |
126 | | Name | Type |
127 | | :------ | :------ |
128 | | `data` | `Record`\<`string`, `any`\> |
129 |
130 | #### Returns
131 |
132 | [`AccountStateDelta`](modelsv2.AccountStateDelta.md)
133 |
134 | #### Defined in
135 |
136 | client/v2/algod/models/types.ts:882
137 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/algokit:utils:python:markdown:capabilities:dispenser-client.md:
--------------------------------------------------------------------------------
```markdown
1 | # TestNet Dispenser Client
2 |
3 | The TestNet Dispenser Client is a utility for interacting with the AlgoKit TestNet Dispenser API. It provides methods to fund an account, register a refund for a transaction, and get the current limit for an account.
4 |
5 | ## Creating a Dispenser Client
6 |
7 | To create a Dispenser Client, you need to provide an authorization token. This can be done in two ways:
8 |
9 | 1. Pass the token directly to the client constructor as `auth_token`.
10 | 2. Set the token as an environment variable `ALGOKIT_DISPENSER_ACCESS_TOKEN` (see [docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md#error-handling) on how to obtain the token).
11 |
12 | If both methods are used, the constructor argument takes precedence.
13 |
14 | ```py
15 | from algokit_utils import TestNetDispenserApiClient
16 |
17 | # Using constructor argument
18 |
19 | client = TestNetDispenserApiClient(auth_token="your_auth_token")
20 |
21 | # Using environment variable
22 |
23 | import os
24 | os.environ["ALGOKIT_DISPENSER_ACCESS_TOKEN"] = "your_auth_token"
25 | client = TestNetDispenserApiClient()
26 | ```
27 |
28 | ## Funding an Account
29 |
30 | To fund an account with Algos from the dispenser API, use the `fund` method. This method requires the receiver’s address, the amount to be funded, and the asset ID.
31 |
32 | ```py
33 | response = client.fund(address="receiver_address", amount=1000, asset_id=0)
34 | ```
35 |
36 | The `fund` method returns a `FundResponse` object, which contains the transaction ID (`tx_id`) and the amount funded.
37 |
38 | ## Registering a Refund
39 |
40 | To register a refund for a transaction with the dispenser API, use the `refund` method. This method requires the transaction ID of the refund transaction.
41 |
42 | ```py
43 | client.refund(refund_txn_id="transaction_id")
44 | ```
45 |
46 | > Keep in mind, to perform a refund you need to perform a payment transaction yourself first by send funds back to TestNet Dispenser, then you can invoke this `refund` endpoint and pass the txn_id of your refund txn. You can obtain dispenser address by inspecting the `sender` field of any issued `fund` transaction initiated via [`fund`]().
47 |
48 | ## Getting Current Limit
49 |
50 | To get the current limit for an account with Algos from the dispenser API, use the `get_limit` method. This method requires the account address.
51 |
52 | ```py
53 | response = client.get_limit(address="account_address")
54 | ```
55 |
56 | The `get_limit` method returns a `LimitResponse` object, which contains the current limit amount.
57 |
58 | ## Error Handling
59 |
60 | If an error occurs while making a request to the dispenser API, an exception will be raised with a message indicating the type of error. Refer to [Error Handling docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md#error-handling) for details on how you can handle each individual error `code`.
61 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/liquid-auth:README.md:
--------------------------------------------------------------------------------
```markdown
1 | # Algorand Authentication Service
2 |
3 | - [Vision](VISION.md)
4 | - [Architecture Diagram](ARCHITECTURE.md)
5 | - [Sequence Diagram](SEQUENCE.md)
6 | - [Decisions](.decisions/README.md)
7 |
8 | # Overview
9 |
10 | This project holds the standard FIDO2 api endpoints and the Proof of Knowledge for Algorand specific private keys.
11 | The api is a stateful session-based architecture with endpoint guards.
12 | A user must prove ownership of a private key to associate PublicKeyCredentials
13 |
14 | ## Getting started
15 |
16 | ### Prerequisites
17 | - Node.js 18+
18 | - Docker
19 |
20 | #### Clone the project
21 |
22 | ```bash
23 | git clone [email protected]:algorandfoundation/liquid-auth.git && cd liquid-auth
24 | ```
25 |
26 | ### NGROK
27 |
28 | **note on VPNs**: Ngrok will not work with VPNs, so to run locally the project, `disable` it or `configure` your VPN's split tunneling to allow ngrok traffic.
29 |
30 | Sign up for a free account at [ngrok](https://ngrok.com/) and follow the instructions to get your <NGROK_AUTH_TOKEN> and <NGROK_STATIC_DOMAIN>.
31 |
32 | #### With Docker
33 | Don't run the ngrok commands directly as expressed in the ngrok guide as it will create run-time port conflicts.
34 |
35 | #### Without Docker
36 | ngrok will ask you to add your auth token to your configuration file.
37 |
38 | ``` bash
39 | ngrok config add-authtoken <NGROK_AUTH_TOKEN>
40 | ```
41 |
42 | Will then ask you to deploy your static domain, make sure to change the port to **5173** like this:
43 |
44 | ``` bash
45 | ngrok http --domain=<NGROK_STATIC_DOMAIN> 5173
46 | ```
47 |
48 | #### Configure NGROK
49 |
50 | Add a `ngrok.yml` configuration to the root directory.
51 |
52 | ##### Example Configuration
53 | ```yaml
54 | version: 2
55 | authtoken: <NGROK_AUTH_TOKEN>
56 | tunnels:
57 | website:
58 | addr: liquid-auth:5173
59 | proto: http
60 | domain: <NGROK_STATIC_DOMAIN>
61 |
62 | ```
63 | *Make sure to update the `authtoken` and `domain` in the `ngrok.yml` file with your ngrok details.*
64 |
65 | #### Update the Service's .env.docker file
66 |
67 | Update the [.env.docker](.env.docker) file with the following keys with the values from ngrok:
68 |
69 | ```bash
70 | HOSTNAME=<NGROK_STATIC_DOMAIN>
71 | ORIGIN=https://<NGROK_STATIC_DOMAIN>
72 | ```
73 |
74 | ### Start services
75 |
76 | Run the following command to start the backend:
77 |
78 | ```bash
79 | docker-compose up -d
80 | ```
81 |
82 | Navigate to the ngrok URL in your browser to test the FIDO2 feature.
83 |
84 |
85 | ## Using the app
86 |
87 | #### Install the [Android client](https://github.com/algorandfoundation/liquid-auth-android/releases) to your device.
88 |
89 | 
90 |
91 |
92 | ### QR Connect
93 |
94 | Open the Connect Modal on the website and scan the QR code using the "Connect" button on the Android device.
95 | Follow the instructions on the Android device to register a credential.
96 |
97 |
98 | 
99 |
100 |
101 | ### Peer to Peer
102 |
103 | Once the credential is registered, you can send messages over the peer connection.
104 |
105 | 
106 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/algokit:utils:python:source:capabilities:dispenser-client.md:
--------------------------------------------------------------------------------
```markdown
1 | # TestNet Dispenser Client
2 |
3 | The TestNet Dispenser Client is a utility for interacting with the AlgoKit TestNet Dispenser API. It provides methods to fund an account, register a refund for a transaction, and get the current limit for an account.
4 |
5 | ## Creating a Dispenser Client
6 |
7 | To create a Dispenser Client, you need to provide an authorization token. This can be done in two ways:
8 |
9 | 1. Pass the token directly to the client constructor as `auth_token`.
10 | 2. Set the token as an environment variable `ALGOKIT_DISPENSER_ACCESS_TOKEN` (see [docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md#error-handling) on how to obtain the token).
11 |
12 | If both methods are used, the constructor argument takes precedence.
13 |
14 | ```py
15 | from algokit_utils import TestNetDispenserApiClient
16 |
17 | # Using constructor argument
18 |
19 | client = TestNetDispenserApiClient(auth_token="your_auth_token")
20 |
21 | # Using environment variable
22 |
23 | import os
24 | os.environ["ALGOKIT_DISPENSER_ACCESS_TOKEN"] = "your_auth_token"
25 | client = TestNetDispenserApiClient()
26 | ```
27 |
28 | ## Funding an Account
29 |
30 | To fund an account with Algos from the dispenser API, use the `fund` method. This method requires the receiver's address, the amount to be funded, and the asset ID.
31 |
32 | ```py
33 | response = client.fund(address="receiver_address", amount=1000, asset_id=0)
34 | ```
35 |
36 | The `fund` method returns a `FundResponse` object, which contains the transaction ID (`tx_id`) and the amount funded.
37 |
38 | ## Registering a Refund
39 |
40 | To register a refund for a transaction with the dispenser API, use the `refund` method. This method requires the transaction ID of the refund transaction.
41 |
42 | ```py
43 | client.refund(refund_txn_id="transaction_id")
44 | ```
45 |
46 | > Keep in mind, to perform a refund you need to perform a payment transaction yourself first by send funds back to TestNet Dispenser, then you can invoke this `refund` endpoint and pass the txn_id of your refund txn. You can obtain dispenser address by inspecting the `sender` field of any issued `fund` transaction initiated via [`fund`](#funding-an-account).
47 |
48 | ## Getting Current Limit
49 |
50 | To get the current limit for an account with Algos from the dispenser API, use the `get_limit` method. This method requires the account address.
51 |
52 | ```py
53 | response = client.get_limit(address="account_address")
54 | ```
55 |
56 | The `get_limit` method returns a `LimitResponse` object, which contains the current limit amount.
57 |
58 | ## Error Handling
59 |
60 | If an error occurs while making a request to the dispenser API, an exception will be raised with a message indicating the type of error. Refer to [Error Handling docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md#error-handling) for details on how you can handle each individual error `code`.
61 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/algokit:utils:typescript:code:interfaces:types_transaction.SendAtomicTransactionComposerResults.md:
--------------------------------------------------------------------------------
```markdown
1 | [@algorandfoundation/algokit-utils](../README.md) / [types/transaction](../modules/types_transaction.md) / SendAtomicTransactionComposerResults
2 |
3 | # Interface: SendAtomicTransactionComposerResults
4 |
5 | [types/transaction](../modules/types_transaction.md).SendAtomicTransactionComposerResults
6 |
7 | The result of preparing and/or sending multiple transactions using an `AtomicTransactionComposer`
8 |
9 | ## Hierarchy
10 |
11 | - [`SendTransactionResults`](types_transaction.SendTransactionResults.md)
12 |
13 | ↳ **`SendAtomicTransactionComposerResults`**
14 |
15 | ## Table of contents
16 |
17 | ### Properties
18 |
19 | - [confirmations](types_transaction.SendAtomicTransactionComposerResults.md#confirmations)
20 | - [groupId](types_transaction.SendAtomicTransactionComposerResults.md#groupid)
21 | - [returns](types_transaction.SendAtomicTransactionComposerResults.md#returns)
22 | - [transactions](types_transaction.SendAtomicTransactionComposerResults.md#transactions)
23 | - [txIds](types_transaction.SendAtomicTransactionComposerResults.md#txids)
24 |
25 | ## Properties
26 |
27 | ### confirmations
28 |
29 | • **confirmations**: `PendingTransactionResponse`[]
30 |
31 | The responses if the transactions were sent and waited for,
32 | the index of the confirmation will match the index of the underlying transaction
33 |
34 | #### Overrides
35 |
36 | [SendTransactionResults](types_transaction.SendTransactionResults.md).[confirmations](types_transaction.SendTransactionResults.md#confirmations)
37 |
38 | #### Defined in
39 |
40 | [src/types/transaction.ts:81](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/transaction.ts#L81)
41 |
42 | ___
43 |
44 | ### groupId
45 |
46 | • **groupId**: `string`
47 |
48 | base64 encoded representation of the group ID of the atomic group
49 |
50 | #### Defined in
51 |
52 | [src/types/transaction.ts:73](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/transaction.ts#L73)
53 |
54 | ___
55 |
56 | ### returns
57 |
58 | • `Optional` **returns**: [`ABIReturn`](../modules/types_app.md#abireturn)[]
59 |
60 | If ABI method(s) were called the processed return values
61 |
62 | #### Defined in
63 |
64 | [src/types/transaction.ts:77](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/transaction.ts#L77)
65 |
66 | ___
67 |
68 | ### transactions
69 |
70 | • **transactions**: `Transaction`[]
71 |
72 | The transactions that have been prepared and/or sent
73 |
74 | #### Inherited from
75 |
76 | [SendTransactionResults](types_transaction.SendTransactionResults.md).[transactions](types_transaction.SendTransactionResults.md#transactions)
77 |
78 | #### Defined in
79 |
80 | [src/types/transaction.ts:63](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/transaction.ts#L63)
81 |
82 | ___
83 |
84 | ### txIds
85 |
86 | • **txIds**: `string`[]
87 |
88 | The transaction IDs that have been prepared and/or sent
89 |
90 | #### Defined in
91 |
92 | [src/types/transaction.ts:75](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/transaction.ts#L75)
93 |
```
--------------------------------------------------------------------------------
/packages/server/src/resources/knowledge/taxonomy/SDKs:javascript:classes:indexerModels.EvalDeltaKeyValue.md:
--------------------------------------------------------------------------------
```markdown
1 | [algosdk](../README.md) / [Exports](../modules.md) / [indexerModels](../modules/indexerModels.md) / EvalDeltaKeyValue
2 |
3 | # Class: EvalDeltaKeyValue
4 |
5 | [indexerModels](../modules/indexerModels.md).EvalDeltaKeyValue
6 |
7 | Key-value pairs for StateDelta.
8 |
9 | ## Hierarchy
10 |
11 | - `default`
12 |
13 | ↳ **`EvalDeltaKeyValue`**
14 |
15 | ## Table of contents
16 |
17 | ### Constructors
18 |
19 | - [constructor](indexerModels.EvalDeltaKeyValue.md#constructor)
20 |
21 | ### Properties
22 |
23 | - [attribute\_map](indexerModels.EvalDeltaKeyValue.md#attribute_map)
24 | - [key](indexerModels.EvalDeltaKeyValue.md#key)
25 | - [value](indexerModels.EvalDeltaKeyValue.md#value)
26 |
27 | ### Methods
28 |
29 | - [get\_obj\_for\_encoding](indexerModels.EvalDeltaKeyValue.md#get_obj_for_encoding)
30 | - [from\_obj\_for\_encoding](indexerModels.EvalDeltaKeyValue.md#from_obj_for_encoding)
31 |
32 | ## Constructors
33 |
34 | ### constructor
35 |
36 | • **new EvalDeltaKeyValue**(`«destructured»`)
37 |
38 | Creates a new `EvalDeltaKeyValue` object.
39 |
40 | #### Parameters
41 |
42 | | Name | Type |
43 | | :------ | :------ |
44 | | `«destructured»` | `Object` |
45 | | › `key` | `string` |
46 | | › `value` | [`EvalDelta`](indexerModels.EvalDelta.md) |
47 |
48 | #### Overrides
49 |
50 | BaseModel.constructor
51 |
52 | #### Defined in
53 |
54 | client/v2/indexer/models/types.ts:3028
55 |
56 | ## Properties
57 |
58 | ### attribute\_map
59 |
60 | • **attribute\_map**: `Record`\<`string`, `string`\>
61 |
62 | #### Inherited from
63 |
64 | BaseModel.attribute\_map
65 |
66 | #### Defined in
67 |
68 | client/v2/basemodel.ts:56
69 |
70 | ___
71 |
72 | ### key
73 |
74 | • **key**: `string`
75 |
76 | #### Defined in
77 |
78 | client/v2/indexer/models/types.ts:3016
79 |
80 | ___
81 |
82 | ### value
83 |
84 | • **value**: [`EvalDelta`](indexerModels.EvalDelta.md)
85 |
86 | Represents a TEAL value delta.
87 |
88 | #### Defined in
89 |
90 | client/v2/indexer/models/types.ts:3021
91 |
92 | ## Methods
93 |
94 | ### get\_obj\_for\_encoding
95 |
96 | ▸ **get_obj_for_encoding**(`binary?`): `Record`\<`string`, `any`\>
97 |
98 | Get an object ready for encoding to either JSON or msgpack.
99 |
100 | #### Parameters
101 |
102 | | Name | Type | Default value | Description |
103 | | :------ | :------ | :------ | :------ |
104 | | `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. |
105 |
106 | #### Returns
107 |
108 | `Record`\<`string`, `any`\>
109 |
110 | #### Inherited from
111 |
112 | BaseModel.get\_obj\_for\_encoding
113 |
114 | #### Defined in
115 |
116 | client/v2/basemodel.ts:65
117 |
118 | ___
119 |
120 | ### from\_obj\_for\_encoding
121 |
122 | ▸ `Static` **from_obj_for_encoding**(`data`): [`EvalDeltaKeyValue`](indexerModels.EvalDeltaKeyValue.md)
123 |
124 | #### Parameters
125 |
126 | | Name | Type |
127 | | :------ | :------ |
128 | | `data` | `Record`\<`string`, `any`\> |
129 |
130 | #### Returns
131 |
132 | [`EvalDeltaKeyValue`](indexerModels.EvalDeltaKeyValue.md)
133 |
134 | #### Defined in
135 |
136 | client/v2/indexer/models/types.ts:3040
137 |
```