openapi: 3.0.0
paths:
  /v0/auth/authenticate:
    post:
      description: Verifies wallet signature and issues session tokens
      operationId: authenticate
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthenticateRequestDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthenticateResponseDto'
        '400':
          description: Invalid signed data
        '401':
          description: Signature verification failed
      summary: Authenticate user with signed data
      tags:
        - User Auth
  /v0/auth/refresh:
    post:
      description: Exchange refresh token for a new access token
      operationId: refresh
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RefreshRequestDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RefreshResponseDto'
        '401':
          description: Invalid or expired refresh token
      summary: Refresh access token
      tags:
        - User Auth
  /v0/account/balances:
    get:
      description: >-
        Returns token balances for the authenticated user from private balance
        sources
      operationId: getBalances
      parameters:
        - name: tokenIds
          required: false
          in: query
          description: >-
            Comma-separated list of token IDs to query. If empty, returns all
            non-zero balances.
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetBalancesResponse'
        '401':
          description: Unauthorized - User session token is invalid or expired
      security:
        - User-Session: []
      summary: Get user token balances
      tags:
        - Account
  /v0/account/history:
    get:
      description: >-
        Returns paginated public and confidential transaction history. For the
        initial request, omit both nextCursor and prevCursor to retrieve the
        latest history. For subsequent requests, pass either nextCursor or
        prevCursor from the previous response.
      operationId: getHistory
      parameters:
        - name: prevCursor
          required: false
          in: query
          description: >-
            Pass the prevCursor value from a previous response to fetch older
            items. Omit both cursors for the initial request. Do not pass
            together with nextCursor.
          schema:
            type: string
        - name: nextCursor
          required: false
          in: query
          description: >-
            Pass the nextCursor value from a previous response to poll for newer
            items. Omit both cursors for the initial request. Do not pass
            together with prevCursor.
          schema:
            type: string
        - name: status
          required: false
          in: query
          description: Filter by statuses
          schema:
            example:
              - PROCESSING
              - SUCCESS
            type: array
            items:
              type: string
              enum:
                - PENDING_DEPOSIT
                - INCOMPLETE_DEPOSIT
                - PROCESSING
                - SUCCESS
                - REFUNDED
                - FAILED
        - name: limit
          required: false
          in: query
          description: Maximum number of items to return per page
          schema:
            minimum: 1
            maximum: 100
            default: 20
            example: 20
            type: integer
        - name: depositAddress
          required: false
          in: query
          description: Filter by deposit address
          schema:
            type: string
        - name: depositMemo
          required: false
          in: query
          description: >-
            Filter by deposit memo. Only has effect when depositAddress is also
            provided.
          schema:
            type: string
        - name: search
          required: false
          in: query
          description: Search by deposit address, recipient, sender, or tx hash
          schema:
            type: string
        - name: depositType
          required: false
          in: query
          description: >-
            Correlated deposit type filter. Index-aligned with recipientType and
            refundType. Use "null" as a wildcard for that position. Multiple
            values form OR conditions.
          schema:
            example:
              - ORIGIN_CHAIN
              - INTENTS
            type: array
            items:
              type: string
              enum:
                - ORIGIN_CHAIN
                - INTENTS
                - CONFIDENTIAL_INTENTS
                - 'null'
        - name: recipientType
          required: false
          in: query
          description: >-
            Correlated recipient type filter. Index-aligned with depositType and
            refundType. Use "null" as a wildcard for that position.
          schema:
            example:
              - DESTINATION_CHAIN
              - INTENTS
            type: array
            items:
              type: string
              enum:
                - DESTINATION_CHAIN
                - INTENTS
                - CONFIDENTIAL_INTENTS
                - 'null'
        - name: refundType
          required: false
          in: query
          description: >-
            Correlated refund type filter. Index-aligned with depositType and
            recipientType. Use "null" as a wildcard for that position.
          schema:
            example:
              - ORIGIN_CHAIN
              - INTENTS
            type: array
            items:
              type: string
              enum:
                - ORIGIN_CHAIN
                - INTENTS
                - CONFIDENTIAL_INTENTS
                - 'null'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HistoryResponse'
        '401':
          description: Unauthorized - supplied user session token is invalid or expired
      summary: Get transaction history
      tags:
        - Account
  /v0/tokens:
    get:
      description: >-
        Retrieves a list of tokens currently supported by the 1Click API for
        asset swaps.


        Each token entry includes its blockchain, contract address (if
        available), price in USD, and other metadata such as symbol and
        decimals.
      operationId: getTokens
      parameters: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TokenResponse'
      summary: Get supported tokens
      tags:
        - OneClick
  /v0/quote:
    post:
      description: >-
        Generates a swap quote based on input parameters such as the assets,
        amount, slippage tolerance, and recipient/refund information.


        Returns pricing details, estimated time, and a unique **deposit
        address** to which tokens must be transferred to initiate the swap.


        You can set the `dry` parameter to `true` to simulate the quote request
        **without generating a deposit address** or initiating the swap process.
        This is useful for previewing swap parameters or validating input data
        without committing to an actual swap.


        This endpoint is the first required step in the swap process.
      operationId: getQuote
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuoteRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuoteResponse'
        '400':
          description: Bad Request - Invalid input data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestResponse'
        '401':
          description: Unauthorized - API key or JWT token is invalid
      security:
        - X-API-Key: []
        - JWT-auth: []
      summary: Request a swap quote
      tags:
        - OneClick
  /v0/status:
    get:
      description: >-
        Retrieves the current status of a swap using the unique deposit address
        from the quote, if quote response included deposit memo, it is required
        as well.


        The response includes the state of the swap (e.g., pending, processing,
        success, refunded) and any associated swap and transaction details.
      operationId: getExecutionStatus
      parameters:
        - name: depositAddress
          required: true
          in: query
          schema:
            type: string
        - name: depositMemo
          required: false
          in: query
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetExecutionStatusResponse'
        '401':
          description: Unauthorized - API key or JWT token is invalid
        '404':
          description: Deposit address not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestResponse'
      security:
        - X-API-Key: []
        - JWT-auth: []
      summary: Check swap execution status
      tags:
        - OneClick
  /v0/any-input/withdrawals:
    get:
      description: >-
        Retrieves all withdrawals by ANY_INPUT quote with filtering, pagination
        and sorting
      operationId: getAnyInputQuoteWithdrawals
      parameters:
        - name: depositAddress
          required: true
          in: query
          schema:
            type: string
        - name: depositMemo
          required: false
          in: query
          schema:
            type: string
        - name: timestampFrom
          required: false
          in: query
          description: Filter withdrawals from this timestamp (ISO string)
          schema:
            type: string
        - name: page
          required: false
          in: query
          description: 'Page number for pagination (default: 1)'
          schema:
            type: number
        - name: limit
          required: false
          in: query
          description: 'Number of withdrawals per page (max: 50, default: 50)'
          schema:
            type: number
        - name: sortOrder
          required: false
          in: query
          description: Sort order
          schema:
            enum:
              - asc
              - desc
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetAnyInputQuoteWithdrawals'
        '401':
          description: Unauthorized - API key or JWT token is invalid
        '404':
          description: Deposit address not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestResponse'
      security:
        - X-API-Key: []
        - JWT-auth: []
      summary: Get ANY_INPUT withdrawals
      tags:
        - OneClick
  /v0/deposit/submit:
    post:
      description: >-
        Optionally notifies the 1Click service that a deposit has been sent to
        the specified address, using the blockchain transaction hash.


        This step can speed up swap processing by allowing the system to
        preemptively verify the deposit.
      operationId: submitDepositTx
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubmitDepositTxRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmitDepositTxResponse'
        '400':
          description: Bad Request - Invalid input data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestResponse'
        '401':
          description: Unauthorized - API key or JWT token is invalid
      security:
        - X-API-Key: []
        - JWT-auth: []
      summary: Submit deposit transaction hash
      tags:
        - OneClick
  /v0/generate-intent:
    post:
      description: >-
        Generates an unsigned intent payload that needs to be signed by the
        user.

          This endpoint takes a quote's deposit address and other parameters, validates the quote state, and returns an intent payload formatted according to the specified signing standard (e.g., NEP413, ERC191).

          The generated intent must be signed by the user's wallet and then submitted via the `/submit-intent` endpoint to complete the action (e.g. swap).

          **Request Type Variants:**
          - `swap_transfer`: Generate an intent for a swap operation (requires depositAddress, signerId, standard)
      operationId: generateIntent
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
                - $ref: '#/components/schemas/GenerateSwapTransferIntentRequest'
              discriminator:
                propertyName: type
                mapping:
                  swap_transfer: '#/components/schemas/GenerateSwapTransferIntentRequest'
      responses:
        '200':
          description: Successfully generated intent payload
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenerateIntentResponse'
        '400':
          description: Bad Request - Invalid input or quote state
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestResponse'
        '401':
          description: Unauthorized - API key or JWT token is invalid
      security:
        - X-API-Key: []
        - JWT-auth: []
      summary: Generate an intent for signing
      tags:
        - OneClick
  /v0/submit-intent:
    post:
      description: |-
        Submits a signed intent to execute.

          After generating an intent via `/generate-intent` and having the user sign it with their wallet, submit the signed intent through this endpoint.

          The system validates the signature, processes the intent, and returns the intent hash upon successful submission.

          **Request Type Variants:**
          - `swap_transfer`: Submit a signed swap intent (requires signedData object)
      operationId: submitIntent
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
                - $ref: '#/components/schemas/SubmitSwapTransferIntentRequest'
              discriminator:
                propertyName: type
                mapping:
                  swap_transfer: '#/components/schemas/SubmitSwapTransferIntentRequest'
      responses:
        '200':
          description: Successfully submitted intent
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmitIntentResponse'
        '400':
          description: Bad Request - Invalid signature or intent data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestResponse'
        '401':
          description: Unauthorized - API key or JWT token is invalid
      security:
        - X-API-Key: []
        - JWT-auth: []
      summary: Submit a signed intent
      tags:
        - OneClick
info:
  title: 1Click Swap API
  description: API for One-Click Swaps
  version: 0.1.10
  contact: {}
tags: []
servers:
  - url: https://1click.chaindefuser.com
components:
  securitySchemes:
    X-API-Key:
      type: apiKey
      in: header
      name: X-API-Key
      description: API key for partner authentication (recommended)
    JWT-auth:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: JWT token in Authorization header (legacy, use X-API-Key instead)
    User-Session:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: User session token obtained from /auth/authenticate
  schemas:
    AuthenticateRequestDto:
      type: object
      properties:
        signedData:
          oneOf:
            - $ref: '#/components/schemas/MultiPayload'
      required:
        - signedData
    AuthenticateResponseDto:
      type: object
      properties:
        accessToken:
          type: string
          description: JWT access token for API calls
        refreshToken:
          type: string
          description: JWT refresh token for getting new access tokens
        expiresIn:
          type: number
          description: Access token expiration time in seconds
        refreshExpiresIn:
          type: number
          description: Refresh token expiration time in seconds
      required:
        - accessToken
        - refreshToken
        - expiresIn
        - refreshExpiresIn
    RefreshRequestDto:
      type: object
      properties:
        refreshToken:
          type: string
          description: Refresh token obtained from authenticate endpoint
      required:
        - refreshToken
    RefreshResponseDto:
      type: object
      properties:
        accessToken:
          type: string
          description: New JWT access token
        expiresIn:
          type: number
          description: Access token expiration time in seconds
      required:
        - accessToken
        - expiresIn
    BalanceEntry:
      type: object
      properties:
        tokenId:
          type: string
          description: Token identifier
          example: nep141:wrap.near
        available:
          type: string
          description: Available balance (as string to preserve precision)
          example: '1000000000000000000000000'
        source:
          type: string
          description: Balance source
          enum:
            - private
          example: private
      required:
        - tokenId
        - available
        - source
    GetBalancesResponse:
      type: object
      properties:
        balances:
          description: List of token balances
          type: array
          items:
            $ref: '#/components/schemas/BalanceEntry'
      required:
        - balances
    HistoryItem:
      type: object
      properties:
        status:
          type: string
          description: Execution status
          enum:
            - PENDING_DEPOSIT
            - INCOMPLETE_DEPOSIT
            - PROCESSING
            - SUCCESS
            - REFUNDED
            - FAILED
          example: SUCCESS
        depositType:
          type: string
          description: Deposit type
          enum:
            - ORIGIN_CHAIN
            - INTENTS
            - CONFIDENTIAL_INTENTS
          example: ORIGIN_CHAIN
        recipientType:
          type: string
          description: Recipient type
          enum:
            - DESTINATION_CHAIN
            - INTENTS
            - CONFIDENTIAL_INTENTS
          example: DESTINATION_CHAIN
        createdAt:
          type: string
          description: Creation timestamp (ISO 8601)
          example: '2025-01-15T10:30:00.000000Z'
        depositAddress:
          type: string
          description: Deposit address
        depositMemo:
          type: string
          description: Deposit memo
          nullable: true
        originAsset:
          type: string
          description: ID of the origin asset
          example: nep141:arb-0xaf88d065e77c8cc2239327c5edb3a432268e5831.omft.near
        amountInFormatted:
          type: string
          description: Amount of the origin asset in readable format
          example: '100.50'
        amountInUsd:
          type: string
          description: Amount of the origin asset equivalent in USD
          example: '100.50'
        destinationAsset:
          type: string
          description: ID of the destination asset
          example: nep141:sol-5ce3bf3a31af18be40ba30f721101b4341690186.omft.near
        amountOutFormatted:
          type: string
          description: Amount of the destination asset in readable format
          example: '100.23'
        amountOutUsd:
          type: string
          description: Amount of the destination asset equivalent in USD
          example: '100.23'
        recipient:
          type: string
          description: Recipient address
        quoteTransactions:
          type: array
          description: Deposit transactions with sender and tx hash
          items:
            type: object
            properties:
              sender:
                type: string
              txHash:
                type: string
        refundTo:
          type: string
          description: Refund-to address
        refundType:
          type: string
          description: Refund type
          enum:
            - ORIGIN_CHAIN
            - INTENTS
            - CONFIDENTIAL_INTENTS
        refundReason:
          type: string
          description: Refund reason, null when no refund occurred
          nullable: true
        refundedAmountFormatted:
          type: string
          description: Refunded amount in readable format
        refundedAmountUsd:
          type: string
          description: Refunded amount equivalent in USD
        refundFee:
          type: string
          description: Refund fee in base units of the origin asset
          nullable: true
        refundFeeFormatted:
          type: string
          description: Formatted refund fee
      required:
        - status
        - depositType
        - recipientType
        - createdAt
        - depositAddress
        - depositMemo
        - refundType
    HistoryResponse:
      type: object
      properties:
        items:
          description: >-
            History items for the current page. When fetching older items (via
            prevCursor), fewer items than limit means you reached the end — no
            need to fetch further. For newer items (via nextCursor), new data
            can always appear later.
          type: array
          items:
            $ref: '#/components/schemas/HistoryItem'
        nextCursor:
          type: string
          description: Pass it back as nextCursor to poll for newer items.
        prevCursor:
          type: string
          description: Pass it back as prevCursor to fetch older items.
      required:
        - items
    IntentStandardEnum:
      type: string
      enum:
        - nep413
        - erc191
        - raw_ed25519
        - webauthn
        - ton_connect
        - sep53
        - tip191
    GenerateSwapTransferIntentRequest:
      type: object
      properties:
        type:
          type: string
          description: The type of intent action
          enum:
            - swap_transfer
        standard:
          description: The standard used for signing the intent
          example: nep413
          allOf:
            - $ref: '#/components/schemas/IntentStandardEnum'
        signerId:
          type: string
          description: The account ID of the signer
          example: user.near
        depositAddress:
          type: string
          description: The deposit address from the quote response
          example: '0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb0'
      required:
        - type
        - standard
        - signerId
        - depositAddress
    SubmitSwapTransferIntentRequest:
      type: object
      properties:
        type:
          type: string
          description: The type of intent action
          enum:
            - swap_transfer
        signedData:
          oneOf:
            - $ref: '#/components/schemas/MultiPayload'
      required:
        - type
        - signedData
    TokenResponse:
      type: object
      properties:
        assetId:
          type: string
          description: Unique asset identifier
          example: nep141:wrap.near
        decimals:
          type: number
          description: Number of decimals for the token
          example: 24
        blockchain:
          type: string
          enum:
            - near
            - eth
            - base
            - arb
            - btc
            - sol
            - ton
            - dash
            - doge
            - xrp
            - zec
            - gnosis
            - bera
            - bsc
            - pol
            - tron
            - sui
            - movement
            - op
            - avax
            - stellar
            - aptos
            - cardano
            - ltc
            - xlayer
            - monad
            - bch
            - adi
            - plasma
            - scroll
            - starknet
            - aleo
            - hypercore
            - fogo
          description: Blockchain associated with the token
          example: near
        symbol:
          type: string
          description: Token symbol (e.g. BTC, ETH)
          example: wNEAR
        price:
          type: number
          description: Current price of the token in USD
          example: '2.79'
        priceUpdatedAt:
          format: date-time
          type: string
          description: Date when the token price was last updated
          example: '2025-03-28T12:23:00.070Z'
        contractAddress:
          type: string
          description: Contract address of the token
          example: wrap.near
        coingeckoId:
          type: string
          description: >-
            CoinGecko coin id, when known. Use it to fetch price history from
            CoinGecko.
          example: wrapped-near
      required:
        - assetId
        - decimals
        - blockchain
        - symbol
        - price
        - priceUpdatedAt
    Rebate:
      type: object
      properties:
        recipient:
          type: string
          description: >-
            Confidential Intents account identifier that receives this rebate
            share. Rebate delivery uses signed transfer intent on Confidential
            Intents; direct token transfers are not supported.
          example: rebate-recipient.near
        share:
          type: number
          description: Rebate share for this recipient in percent.
          example: 20
          minimum: 0
          maximum: 100
      required:
        - recipient
        - share
    AppFee:
      type: object
      properties:
        recipient:
          type: string
          description: Account ID within Intents to which this fee will be transferred
          example: recipient.near
        fee:
          type: number
          description: >-
            Fee for this recipient as part of amountIn in basis points (1/100th
            of a percent), e.g. 100 for 1% fee
          example: 100
      required:
        - recipient
        - fee
    QuoteRequest:
      type: object
      properties:
        dry:
          type: boolean
          description: |-
            Flag indicating whether this is a dry run request.
            If `true`, the response will **NOT** contain the following fields:
            - `depositAddress`
            - `timeWhenInactive`
            - `deadline`
          example: true
        depositMode:
          type: string
          description: >-
            What deposit address mode you will get in the response, most chain
            supports only `SIMPLE` and some(for example `stellar`) only `MEMO`:

            - `SIMPLE` - usual deposit with only deposit address.

            - `MEMO` - some chains will **REQUIRE** the `memo` together with
            `depositAddress` for swap to work.


            `depositMode` applies only to deposit transaction metadata.
          enum:
            - SIMPLE
            - MEMO
          default: SIMPLE
          example: SIMPLE
        swapType:
          type: string
          description: >-
            How to interpret `amount` (and refunds) when performing the swap:


            - `EXACT_INPUT` — requests the output amount for an exact input.
              - If deposit is less than `amountIn`, the deposit is refunded by deadline.
              - If deposit is above than `amountIn`, the swap is processed and the excess is refunded to `refundTo` address after swap is complete.

            - `EXACT_OUTPUT` — requests the input amount for an exact output.
              - The output amount (`amountOut`) is fixed; slippage is applied to the **input** side.
              - The quote response includes `amountIn` (the proposed input with slippage tolerance baked in) and `minAmountIn` (the minimum input required).
              - **Important**: `amountIn` will appear higher than `minAmountIn` by approximately your `slippageTolerance`. This is **not** price degradation—it is a buffer to ensure successful execution. Any input amount above what is actually needed for the swap is **refunded** to your `refundTo` address after the swap completes.
              - If the deposit is above `amountIn`, the swap is processed and the excess is refunded to `refundTo` address after swap is complete.
              - If the deposit is less than `minAmountIn`, the deposit is refunded by deadline.

            - `FLEX_INPUT` — a flexible input amount that allows for partial
            deposits and variable amounts.
              - `slippage` applies both to `amountOut` and `amountIn` and defines an acceptable range (`minAmountIn` and `minAmountOut`).
              - Any amount higher than `minAmountIn` is accepted and converted to the output asset as long as `minAmountOut` is met.
              - The deposit must be at least `minAmountIn`, after applying the slippage constraint to the quoted amount. Deposits below `minAmountIn` are refunded if the total received by the deadline is below this amount.
              - If deposits exceed the upper bound, the swap is still processed

            - `ANY_INPUT` — collects deposits and converts them to a destination
            asset. Used for fee aggregation and similar use cases. Only
            available for authorized partners.
          enum:
            - EXACT_INPUT
            - EXACT_OUTPUT
            - FLEX_INPUT
            - ANY_INPUT
        slippageTolerance:
          type: number
          description: >-
            Slippage tolerance for the swap. This value is in basis points
            (1/100th of a percent), e.g. 100 for 1% slippage.
          example: 100
        originAsset:
          type: string
          description: ID of the origin asset.
          example: nep141:arb-0xaf88d065e77c8cc2239327c5edb3a432268e5831.omft.near
        depositType:
          type: string
          description: >-
            Type of deposit address:

            - `ORIGIN_CHAIN` - deposit address on the origin chain.

            - `INTENTS` - the account ID within NEAR Intents to which you should
            transfer assets.

            - `CONFIDENTIAL_INTENTS` - the account ID within Confidential
            Intents to which assets are to be transferred. Fund the swap from a
            Confidential Intents account by submitting a signed transfer intent
            to the quote `depositAddress`. Direct token transfers are not
            supported.
          enum:
            - ORIGIN_CHAIN
            - INTENTS
            - CONFIDENTIAL_INTENTS
        destinationAsset:
          type: string
          description: ID of the destination asset.
          example: nep141:sol-5ce3bf3a31af18be40ba30f721101b4341690186.omft.near
        amount:
          type: string
          description: >-
            Amount to swap as the base amount. It is interpreted as the input or
            output amount based on the `swapType` flag and is specified in the
            smallest unit of the currency (e.g., wei for ETH). Must be an
            integer string; decimal values like "0.01" are invalid—use base
            units (e.g. "10000000000000000" for 0.01 with 18 decimals).
          example: '1000'
        refundTo:
          type: string
          description: Address used for refunds.
          example: '0x2527D02599Ba641c19FEa793cD0F167589a0f10D'
        refundType:
          type: string
          description: >-
            Type of refund address:

            - `ORIGIN_CHAIN` - assets are refunded to the `refundTo` address on
            the origin chain.

            - `INTENTS` - assets are refunded to the `refundTo` Intents account.

            - `CONFIDENTIAL_INTENTS` - assets are refunded to the `refundTo`
            Confidential Intents account. On Confidential Intents, 1Click
            settles refunds via signed transfer intent rather than direct token
            transfer.
          enum:
            - ORIGIN_CHAIN
            - INTENTS
            - CONFIDENTIAL_INTENTS
        recipient:
          type: string
          description: >-
            Recipient address. The format must match `recipientType`.
            Destination routing metadata, when required, must be encoded
            according to the destination chain address format.
          example: 13QkxhNMrTPxoCkRdYdJ65tFuwXPhL5gLS2Z5Nr6gjRK
        connectedWallets:
          description: Addresses of connected wallets.
          example:
            - 0x123...
            - 0x456...
          type: array
          items:
            type: string
        sessionId:
          type: string
          description: Unique client session identifier for 1Click.
          example: session_abc123
        virtualChainRecipient:
          type: string
          description: EVM address of a transfer recipient in a virtual chain
          example: '0xb4c2fbec9d610F9A3a9b843c47b1A8095ceC887C'
        virtualChainRefundRecipient:
          type: string
          description: EVM address of a refund recipient in a virtual chain
          example: '0xb4c2fbec9d610F9A3a9b843c47b1A8095ceC887C'
        customRecipientMsg:
          type: string
          description: >-
            **HIGHLY EXPERIMENTAL** Message to pass to `ft_transfer_call` when
            withdrawing assets to NEAR.


            Otherwise, `ft_transfer` will be used.


            **WARNING**: Funds will be lost if used with non NEP-141 tokens, in
            case of insufficient `storage_deposit` or if the recipient does not
            implement `ft_on_transfer` method.
          example: smart-contract-recipient.near
        recipientType:
          type: string
          description: >-
            Type of recipient address:

            - `DESTINATION_CHAIN` - assets are transferred to the chain of
            `destinationAsset`.

            - `INTENTS` - assets are transferred to an account inside Intents.

            - `CONFIDENTIAL_INTENTS` - assets are transferred to the `recipient`
            account inside Confidential Intents. On Confidential Intents, 1Click
            settles swap output via signed transfer intent rather than direct
            token transfer.
          enum:
            - DESTINATION_CHAIN
            - INTENTS
            - CONFIDENTIAL_INTENTS
        deadline:
          format: date-time
          type: string
          description: >-
            Timestamp in ISO format that identifies when the user refund begins
            if the swap isn't completed by then. It must exceed the time
            required for the deposit transaction to be mined. For example,
            Bitcoin may require around one hour depending on the fees paid.
          example: '2019-08-24T14:15:22Z'
        confidentiality:
          type: string
          description: >-
            Confidentiality mode for this quote. Invite-only for now: if set,
            API may return an invite-only message until rollout is enabled for
            your integration.
          enum:
            - public
            - basic
            - advanced
          default: public
          example: basic
        referral:
          type: string
          description: >-
            Distribution channel / venue identifier (for example: ledger,
            trustwallet). Keep lowercase for consistency.
          example: ledger
        rebates:
          description: >-
            Rebate distribution for this quote. Provide up to 3 confidential
            Intents recipients (for example, `rebate-recipient.near` on
            confidential Intents); each item defines a recipient and its percent
            share, and all shares must add up to 100.
          example:
            - recipient: rebate-recipient.near
              share: 20
            - recipient: partner-2.near
              share: 80
          type: array
          items:
            $ref: '#/components/schemas/Rebate'
        quoteWaitingTimeMs:
          type: number
          description: >-
            Time in milliseconds the user is willing to wait for a quote from
            the relay.

            **Defaults to 0ms delay if not specified, if you want to receive the
            fastest quote.
          example: 3000
          default: 0
        appFees:
          description: List of recipients and their fees
          type: array
          items:
            $ref: '#/components/schemas/AppFee'
        insured:
          type: boolean
          description: >-
            Opt into an insured swap. When `true`, an additional 0.02% (2 basis
            points) insurance fee is charged on top of any other fees.
          default: false
          example: false
      required:
        - dry
        - swapType
        - slippageTolerance
        - originAsset
        - depositType
        - destinationAsset
        - amount
        - refundTo
        - refundType
        - recipient
        - recipientType
        - deadline
    ChainDepositAddress:
      type: object
      properties:
        blockchain:
          type: string
          description: >-
            Blockchain on which this deposit address accepts funds for the
            quote.
          enum:
            - near
            - eth
            - base
            - arb
            - btc
            - sol
            - ton
            - dash
            - doge
            - xrp
            - zec
            - gnosis
            - bera
            - bsc
            - pol
            - tron
            - sui
            - movement
            - op
            - avax
            - stellar
            - aptos
            - cardano
            - ltc
            - xlayer
            - monad
            - bch
            - adi
            - plasma
            - scroll
            - starknet
            - aleo
            - hypercore
            - fogo
          example: eth
        address:
          type: string
          description: >-
            Deposit address on `blockchain`. Funds sent here are credited to the
            same Intents account.
          example: '0x76b4c56085ED136a8744D52bE956396624a730E8'
        memo:
          type: string
          description: >-
            Memo required together with `address` on chains that need it (e.g.
            Stellar, XRP, TON).
          example: '1111111'
      required:
        - blockchain
        - address
    Quote:
      type: object
      properties:
        depositAddress:
          type: string
          description: >-
            The deposit address on the chain of `originAsset` when `depositType`
            is `ORIGIN_CHAIN`.


            The deposit address inside NEAR Intents (the verifier smart
            contract) when `depositType` is `INTENTS`.


            The account ID within Confidential Intents to which assets are to be
            transferred when `depositType` is `CONFIDENTIAL_INTENTS`. Fund the
            swap by submitting a signed transfer intent to this value. Direct
            token transfers are not supported.
          example: '0x76b4c56085ED136a8744D52bE956396624a730E8'
        depositMemo:
          type: string
          description: >-
            Some deposit addresses **REQUIRE** a `memo` together with
            `depositAddress` for the deposit to be processed. This field is
            deposit-side metadata.
          example: '1111111'
        chainDepositAddresses:
          description: >-
            Deposit addresses across all bridge-supported blockchains for
            funding the same Intents account. Present only for public
            `ANY_INPUT` quotes (`depositType` `INTENTS`); the confidential rail
            does not support multi-chain funding addresses yet. Each entry
            forwards to the Intents account in `depositAddress`, so the user may
            deposit from any listed chain.
          type: array
          items:
            $ref: '#/components/schemas/ChainDepositAddress'
        amountIn:
          type: string
          description: Amount of the origin asset
          example: '1000000'
        amountInFormatted:
          type: string
          description: Amount of the origin asset in readable format
          example: '1'
        amountInUsd:
          type: string
          description: Amount of the origin assets equivalent in USD
          example: '1'
        minAmountIn:
          type: string
          description: Minimum amount of the origin asset that will be used for the swap
          example: '995000'
        amountOut:
          type: string
          description: Amount of the destination asset
          example: '9950000'
        amountOutFormatted:
          type: string
          description: Amount of the destination asset in readable format
          example: '9.95'
        amountOutUsd:
          type: string
          description: Amount of the destination asset equivalent in USD
          example: '9.95'
        minAmountOut:
          type: string
          description: Minimum output amount after slippage is applied
          example: '9900000'
        deadline:
          format: date-time
          type: string
          description: Time when the deposit address becomes inactive and funds may be lost
          example: '2025-03-04T15:00:00Z'
        timeWhenInactive:
          format: date-time
          type: string
          description: >-
            Time when the deposit address becomes cold, causing swap processing
            to take longer
          example: '2025-03-04T15:00:00Z'
        timeEstimate:
          type: number
          description: >-
            Estimated time in seconds for the swap to be executed after the
            deposit transaction is confirmed
          example: 120
        virtualChainRecipient:
          type: string
          description: EVM address of a transfer recipient in a virtual chain
          example: '0xb4c2fbec9d610F9A3a9b843c47b1A8095ceC887C'
        virtualChainRefundRecipient:
          type: string
          description: EVM address of a refund recipient in a virtual chain
          example: '0xb4c2fbec9d610F9A3a9b843c47b1A8095ceC887C'
        customRecipientMsg:
          type: string
          description: >-
            **HIGHLY EXPERIMENTAL** Message passed to `ft_transfer_call` when
            withdrawing assets to NEAR.


            Otherwise, `ft_transfer` will be used.


            **WARNING**: Funds will be lost if used with non NEP-141 tokens, in
            case of insufficient `storage_deposit` or if the recipient does not
            implement `ft_on_transfer` method.
          example: smart-contract-recipient.near
        refundFee:
          type: string
          description: >-
            Fee charged for refunding assets to the refund address in the
            smallest unit of the origin asset
          example: '10000'
        withdrawFee:
          type: string
          description: >-
            Fee charged for withdrawing assets to the recipient in the smallest
            unit of the destination asset. This fee is already accounted for in
            the final amountOut result
          example: '10000'
      required:
        - amountIn
        - amountInFormatted
        - amountInUsd
        - minAmountIn
        - amountOut
        - amountOutFormatted
        - amountOutUsd
        - minAmountOut
        - timeEstimate
    QuoteResponse:
      type: object
      properties:
        correlationId:
          type: string
          description: Unique identifier for request tracing and debugging
          example: 550e8400-e29b-41d4-a716-446655440000
        timestamp:
          format: date-time
          type: string
          description: Timestamp in ISO format that was used to derive the deposit address
          example: '2019-08-24T14:15:22Z'
        signature:
          type: string
          description: >-
            Signature of the 1Click service confirming the quote for the
            specific deposit address. Must be saved on the client side (along
            with the whole quote) in order to resolve any disputes or mistakes.
        quoteRequest:
          description: User request
          allOf:
            - $ref: '#/components/schemas/QuoteRequest'
        quote:
          description: >-
            Response containing the deposit address for sending the `amount` of
            `originAsset` and the expected output amount.
          allOf:
            - $ref: '#/components/schemas/Quote'
      required:
        - correlationId
        - timestamp
        - signature
        - quoteRequest
        - quote
    BadRequestResponse:
      type: object
      properties:
        message:
          type: string
          example: error message
      required:
        - message
    TransactionDetails:
      type: object
      properties:
        hash:
          type: string
          description: Transaction hash
          example: '0x123abc456def789'
        explorerUrl:
          type: string
          description: Explorer URL for the transaction
      required:
        - hash
        - explorerUrl
    SwapDetails:
      type: object
      properties:
        intentHashes:
          description: All intent hashes that took part in this swap
          type: array
          items:
            type: string
        nearTxHashes:
          description: All NEAR transactions executed for this swap
          type: array
          items:
            type: string
        amountIn:
          type: string
          description: Exact amount of `originToken` after the trade was settled
          example: '1000'
        amountInFormatted:
          type: string
          description: >-
            Exact amount of `originToken` in readable format after the trade was
            settled
          example: '0.1'
        amountInUsd:
          type: string
          description: Exact amount of `originToken` equivalent in USD
          example: '0.1'
        amountOut:
          type: string
          description: Exact amount of `destinationToken` after the trade was settled
          example: '9950000'
        amountOutFormatted:
          type: string
          description: >-
            Exact amount of `destinationToken` in readable format after the
            trade was settled
          example: '9.95'
        amountOutUsd:
          type: string
          description: Exact amount of `destinationToken` equivalent in USD
          example: '9.95'
        slippage:
          type: number
          description: Actual slippage
          example: 50
        originChainTxHashes:
          description: Hashes and explorer URLs for all transactions on the origin chain
          type: array
          items:
            $ref: '#/components/schemas/TransactionDetails'
        destinationChainTxHashes:
          description: >-
            Hashes and explorer URLs for all transactions on the destination
            chain
          type: array
          items:
            $ref: '#/components/schemas/TransactionDetails'
        refundedAmount:
          type: string
          description: Amount of `originAsset` transferred to `refundTo`
          example: '1000'
        refundedAmountFormatted:
          type: string
          description: Refunded amount in readable format
          example: '0.1'
        refundedAmountUsd:
          type: string
          description: Refunded amount equivalent in USD
          example: '0.1'
        refundReason:
          type: string
          description: Reason for refund
          example: PARTIAL_DEPOSIT
        depositedAmount:
          type: string
          description: Amount deposited to `depositAddress` onchain
        depositedAmountFormatted:
          type: string
          description: Amount deposited in readable format
        depositedAmountUsd:
          type: string
          description: Amount deposited equivalent in USD
        withdrawFee:
          type: string
          description: >-
            Fee charged for withdrawing assets to the recipient in the smallest
            unit of the destination asset. This fee is already accounted for in
            the final amountOut result
          example: '10000'
        referral:
          type: string
          description: Referral identifier
          example: referral
      required:
        - intentHashes
        - nearTxHashes
        - originChainTxHashes
        - destinationChainTxHashes
    GetExecutionStatusResponse:
      type: object
      properties:
        correlationId:
          type: string
          description: Unique identifier for request tracing and debugging
          example: 550e8400-e29b-41d4-a716-446655440000
        quoteResponse:
          description: Quote response from the original request
          allOf:
            - $ref: '#/components/schemas/QuoteResponse'
        status:
          type: string
          enum:
            - KNOWN_DEPOSIT_TX
            - PENDING_DEPOSIT
            - INCOMPLETE_DEPOSIT
            - PROCESSING
            - SUCCESS
            - REFUNDED
            - FAILED
        updatedAt:
          format: date-time
          type: string
          description: Last time the state was updated
        swapDetails:
          description: Details of actual swaps and withdrawals
          allOf:
            - $ref: '#/components/schemas/SwapDetails'
      required:
        - correlationId
        - quoteResponse
        - status
        - updatedAt
        - swapDetails
    AnyInputQuoteWithdrawal:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILED
          description: Withdrawal status
        amountOutFormatted:
          type: string
          description: Amount out in readable format
          example: '9.95'
        amountOutUsd:
          type: string
          description: Amount out in USD
          example: '9.95'
        amountOut:
          type: string
          description: Amount out in smallest unit
          example: '9950000'
        withdrawFeeFormatted:
          type: string
          description: Withdrawal fee in readable format
          example: '0.01'
        withdrawFee:
          type: string
          description: Withdrawal fee in smallest unit
          example: '10000'
        withdrawFeeUsd:
          type: string
          description: Withdrawal fee in USD
          example: '0.01'
        timestamp:
          type: string
          description: Timestamp of withdrawal
          example: '2019-08-24T14:15:22Z'
        hash:
          type: string
          description: Transaction hash
          example: '0x123abc456def789'
      required:
        - status
        - amountOutFormatted
        - amountOutUsd
        - amountOut
        - withdrawFeeFormatted
        - withdrawFee
        - withdrawFeeUsd
        - timestamp
        - hash
    GetAnyInputQuoteWithdrawals:
      type: object
      properties:
        asset:
          type: string
          description: ID of the destination asset.
          example: nep141:sol-5ce3bf3a31af18be40ba30f721101b4341690186.omft.near
        recipient:
          type: string
          description: Recipient address
          example: '0x2527d02599ba641c19fea793cd0f167589a0f10d'
        affiliateRecipient:
          type: string
          description: Affiliate recipient address
          example: '0x2527d02599ba641c19fea793cd0f167589a0f10d'
        withdrawals:
          description: Details of withdrawals
          allOf:
            - $ref: '#/components/schemas/AnyInputQuoteWithdrawal'
      required:
        - asset
        - recipient
        - affiliateRecipient
    SubmitDepositTxRequest:
      type: object
      properties:
        txHash:
          type: string
          description: Transaction hash of your deposit
          example: '0x123abc456def789'
        depositAddress:
          type: string
          description: Deposit address for the quote
          example: '0x2527D02599Ba641c19FEa793cD0F167589a0f10D'
        nearSenderAccount:
          type: string
          description: Sender account (used only for NEAR blockchain)
          example: relay.tg
        memo:
          type: string
          description: Memo (use if deposit was submitted with one)
          example: '123456'
      required:
        - txHash
        - depositAddress
    SubmitDepositTxResponse:
      type: object
      properties:
        correlationId:
          type: string
          description: Unique identifier for request tracing and debugging
          example: 550e8400-e29b-41d4-a716-446655440000
        quoteResponse:
          description: Quote response from the original request
          allOf:
            - $ref: '#/components/schemas/QuoteResponse'
        status:
          type: string
          enum:
            - KNOWN_DEPOSIT_TX
            - PENDING_DEPOSIT
            - INCOMPLETE_DEPOSIT
            - PROCESSING
            - SUCCESS
            - REFUNDED
            - FAILED
        updatedAt:
          format: date-time
          type: string
          description: Last time the state was updated
        swapDetails:
          description: Details of actual swaps and withdrawals
          allOf:
            - $ref: '#/components/schemas/SwapDetails'
      required:
        - correlationId
        - quoteResponse
        - status
        - updatedAt
        - swapDetails
    GenerateIntentResponse:
      type: object
      properties:
        intent:
          oneOf:
            - $ref: '#/components/schemas/MultiPayloadNarrowed'
        correlationId:
          type: string
          description: Unique identifier for tracing this request
          example: 550e8400-e29b-41d4-a716-446655440000
      required:
        - intent
        - correlationId
    SubmitIntentResponse:
      type: object
      properties:
        intentHash:
          type: string
          description: The hash of the submitted intent
          example: 44XpLRAuZKoVGs9T4qbSNv33MDKMePPAibA52geVLWFw
        correlationId:
          type: string
          description: Unique identifier for tracing this request
          example: 550e8400-e29b-41d4-a716-446655440000
      required:
        - intentHash
        - correlationId
    AuthCall:
      description: >-
        Call [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) with
        `signer_id` of intent.
      type: object
      required:
        - contract_id
        - msg
      properties:
        attached_deposit:
          description: >-
            Optionally, attach deposit to
            [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) call. The
            amount will be subtracted from user's NEP-141 `wNEAR` balance.


            NOTE: the `wNEAR` will not be refunded in case of fail.
          type: string
        contract_id:
          description: Callee for [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
          type: string
        min_gas:
          description: >-
            Optional minimum gas required for created promise to succeed. By
            default, only [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
            required.


            Remaining gas will be distributed evenly across all Function Call
            Promises created during execution of current receipt.
          type: string
          nullable: true
        msg:
          description: >-
            `msg` to pass in
            [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
          type: string
        state_init:
          description: >-
            Optionally initialize the receiver's contract (Deterministic
            AccountId) via
            [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
            right before calling
            [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth) (in the same
            receipt).
          anyOf:
            - oneOf:
                - type: object
                  required:
                    - code
                    - data
                    - version
                  properties:
                    code:
                      oneOf:
                        - type: object
                          required:
                            - hash
                          properties:
                            hash:
                              type: string
                          additionalProperties: false
                        - type: object
                          required:
                            - account_id
                          properties:
                            account_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                    data:
                      type: object
                      additionalProperties:
                        type: string
                    version:
                      type: string
                      enum:
                        - v1
                  additionalProperties: false
              nullable: true
      additionalProperties: false
    Deadline:
      type: string
    DefuseConfig:
      type: object
      required:
        - fees
        - wnear_id
      properties:
        fees:
          type: object
          required:
            - fee
            - fee_collector
          properties:
            fee:
              description: 1 pip == 1/100th of bip == 0.0001%
              type: integer
              format: uint32
              minimum: 0
            fee_collector:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
          additionalProperties: false
        roles:
          default:
            admins: {}
            grantees: {}
            super_admins: []
          allOf:
            - type: object
              properties:
                admins:
                  default: {}
                  type: object
                  additionalProperties:
                    type: array
                    items:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    uniqueItems: true
                grantees:
                  default: {}
                  type: object
                  additionalProperties:
                    type: array
                    items:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    uniqueItems: true
                super_admins:
                  default: []
                  type: array
                  items:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  uniqueItems: true
              additionalProperties: false
        wnear_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
      additionalProperties: false
    DefusePayload_for_DefuseIntents:
      type: object
      required:
        - deadline
        - nonce
        - signer_id
        - verifying_contract
      properties:
        deadline:
          type: string
        intents:
          description: >-
            Sequence of intents to execute in given order. Empty list is also a
            valid sequence, i.e. it doesn't do anything, but still invalidates
            the `nonce` for the signer WARNING: Promises created by different
            intents are executed concurrently and does not rely on the order of
            the intents in this structure
          type: array
          items:
            oneOf:
              - description: See [`AddPublicKey`]
                type: object
                required:
                  - intent
                  - public_key
                properties:
                  intent:
                    type: string
                    enum:
                      - add_public_key
                  public_key:
                    type: string
                    description: 'Encoding: base58'
                    example: ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                additionalProperties: false
              - description: See [`RemovePublicKey`]
                type: object
                required:
                  - intent
                  - public_key
                properties:
                  intent:
                    type: string
                    enum:
                      - remove_public_key
                  public_key:
                    type: string
                    description: 'Encoding: base58'
                    example: ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                additionalProperties: false
              - description: See [`Transfer`]
                type: object
                required:
                  - intent
                  - receiver_id
                  - tokens
                properties:
                  intent:
                    type: string
                    enum:
                      - transfer
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Minimum gas for `mt_on_transfer()`


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: Message to pass to `mt_on_transfer`
                    type: string
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  state_init:
                    description: >-
                      Optionally initialize the receiver's contract
                      (Deterministic AccountId) via
                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                      right before calling `mt_on_transfer()` (in the same
                      receipt).
                    anyOf:
                      - oneOf:
                          - type: object
                            required:
                              - code
                              - data
                              - version
                            properties:
                              code:
                                oneOf:
                                  - type: object
                                    required:
                                      - hash
                                    properties:
                                      hash:
                                        type: string
                                    additionalProperties: false
                                  - type: object
                                    required:
                                      - account_id
                                    properties:
                                      account_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                              data:
                                type: object
                                additionalProperties:
                                  type: string
                              version:
                                type: string
                                enum:
                                  - v1
                            additionalProperties: false
                        nullable: true
                  tokens:
                    type: object
                    additionalProperties:
                      type: string
                additionalProperties: false
              - description: See [`FtWithdraw`]
                type: object
                required:
                  - amount
                  - intent
                  - receiver_id
                  - token
                properties:
                  amount:
                    type: string
                  intent:
                    type: string
                    enum:
                      - ft_withdraw
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Optional minimum required Near gas for created Promise to
                      succeed: * `ft_transfer`:      minimum: 15TGas, default:
                      15TGas * `ft_transfer_call`: minimum: 30TGas, default:
                      50TGas


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      Message to pass to `ft_transfer_call`. Otherwise,
                      `ft_transfer` will be used. NOTE: No refund will be made
                      in case of insufficient `storage_deposit` on `token` for
                      `receiver_id`
                    type: string
                    nullable: true
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  storage_deposit:
                    description: >-
                      Optionally make `storage_deposit` for `receiver_id` on
                      `token`. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in
                      case of fail
                    type: string
                    nullable: true
                  token:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                additionalProperties: false
              - description: See [`NftWithdraw`]
                type: object
                required:
                  - intent
                  - receiver_id
                  - token
                  - token_id
                properties:
                  intent:
                    type: string
                    enum:
                      - nft_withdraw
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Optional minimum required Near gas for created Promise to
                      succeed: * `nft_transfer`:      minimum: 15TGas, default:
                      15TGas * `nft_transfer_call`: minimum: 30TGas, default:
                      50TGas


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      Message to pass to `nft_transfer_call`. Otherwise,
                      `nft_transfer` will be used. NOTE: No refund will be made
                      in case of insufficient `storage_deposit` on `token` for
                      `receiver_id`
                    type: string
                    nullable: true
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  storage_deposit:
                    description: >-
                      Optionally make `storage_deposit` for `receiver_id` on
                      `token`. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in
                      case of fail
                    type: string
                    nullable: true
                  token:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  token_id:
                    type: string
                additionalProperties: false
              - description: See [`MtWithdraw`]
                type: object
                required:
                  - amounts
                  - intent
                  - receiver_id
                  - token
                  - token_ids
                properties:
                  amounts:
                    type: array
                    items:
                      type: string
                  intent:
                    type: string
                    enum:
                      - mt_withdraw
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Optional minimum required Near gas for created Promise to
                      succeed per token: * `mt_batch_transfer`:      minimum:
                      20TGas, default: 20TGas * `mt_batch_transfer_call`:
                      minimum: 35TGas, default: 50TGas


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      Message to pass to `mt_batch_transfer_call`. Otherwise,
                      `mt_batch_transfer` will be used. NOTE: No refund will be
                      made in case of insufficient `storage_deposit` on `token`
                      for `receiver_id`
                    type: string
                    nullable: true
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  storage_deposit:
                    description: >-
                      Optionally make `storage_deposit` for `receiver_id` on
                      `token`. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in
                      case of fail
                    type: string
                    nullable: true
                  token:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  token_ids:
                    type: array
                    items:
                      type: string
                additionalProperties: false
              - description: See [`NativeWithdraw`]
                type: object
                required:
                  - amount
                  - intent
                  - receiver_id
                properties:
                  amount:
                    type: string
                  intent:
                    type: string
                    enum:
                      - native_withdraw
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                additionalProperties: false
              - description: See [`StorageDeposit`]
                type: object
                required:
                  - amount
                  - contract_id
                  - deposit_for_account_id
                  - intent
                properties:
                  amount:
                    type: string
                  contract_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  deposit_for_account_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  intent:
                    type: string
                    enum:
                      - storage_deposit
                additionalProperties: false
              - description: See [`TokenDiff`]
                type: object
                required:
                  - diff
                  - intent
                properties:
                  diff:
                    type: object
                    additionalProperties:
                      type: string
                  intent:
                    type: string
                    enum:
                      - token_diff
                  memo:
                    type: string
                    nullable: true
                  referral:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                    nullable: true
                additionalProperties: false
              - description: See [`SetAuthByPredecessorId`]
                type: object
                required:
                  - enabled
                  - intent
                properties:
                  enabled:
                    type: boolean
                  intent:
                    type: string
                    enum:
                      - set_auth_by_predecessor_id
                additionalProperties: false
              - description: See [`AuthCall`]
                type: object
                required:
                  - contract_id
                  - intent
                  - msg
                properties:
                  attached_deposit:
                    description: >-
                      Optionally, attach deposit to
                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                      call. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance.


                      NOTE: the `wNEAR` will not be refunded in case of fail.
                    type: string
                  contract_id:
                    description: >-
                      Callee for
                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                    type: string
                  intent:
                    type: string
                    enum:
                      - auth_call
                  min_gas:
                    description: >-
                      Optional minimum gas required for created promise to
                      succeed. By default, only
                      [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
                      required.


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      `msg` to pass in
                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                    type: string
                  state_init:
                    description: >-
                      Optionally initialize the receiver's contract
                      (Deterministic AccountId) via
                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                      right before calling
                      [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                      (in the same receipt).
                    anyOf:
                      - oneOf:
                          - type: object
                            required:
                              - code
                              - data
                              - version
                            properties:
                              code:
                                oneOf:
                                  - type: object
                                    required:
                                      - hash
                                    properties:
                                      hash:
                                        type: string
                                    additionalProperties: false
                                  - type: object
                                    required:
                                      - account_id
                                    properties:
                                      account_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                              data:
                                type: object
                                additionalProperties:
                                  type: string
                              version:
                                type: string
                                enum:
                                  - v1
                            additionalProperties: false
                        nullable: true
                additionalProperties: false
              - description: >-
                  Mint a set of tokens from the signer to a specified account
                  id, within the intents contract.
                type: object
                required:
                  - intent
                  - receiver_id
                  - tokens
                properties:
                  intent:
                    type: string
                    enum:
                      - imt_mint
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Minimum gas for `mt_on_transfer()`


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: Message to pass to `mt_on_transfer`
                    type: string
                  receiver_id:
                    description: Receiver of the minted tokens
                    type: string
                  state_init:
                    description: >-
                      Optionally initialize the receiver's contract
                      (Deterministic AccountId) via
                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                      right before calling `mt_on_transfer()` (in the same
                      receipt).
                    anyOf:
                      - oneOf:
                          - type: object
                            required:
                              - code
                              - data
                              - version
                            properties:
                              code:
                                oneOf:
                                  - type: object
                                    required:
                                      - hash
                                    properties:
                                      hash:
                                        type: string
                                    additionalProperties: false
                                  - type: object
                                    required:
                                      - account_id
                                    properties:
                                      account_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                              data:
                                type: object
                                additionalProperties:
                                  type: string
                              version:
                                type: string
                                enum:
                                  - v1
                            additionalProperties: false
                        nullable: true
                  tokens:
                    description: >-
                      The token_ids will be wrapped to bind the token ID to the
                      minter authority (i.e. signer of this intent). The final
                      string representation of the token will be as follows:
                      `imt:<minter_id>:<token_id>`
                    type: object
                    additionalProperties:
                      type: string
                additionalProperties: false
              - description: Burn a set of imt tokens, within the intents contract.
                type: object
                required:
                  - intent
                  - minter_id
                  - tokens
                properties:
                  intent:
                    type: string
                    enum:
                      - imt_burn
                  memo:
                    type: string
                    nullable: true
                  minter_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  tokens:
                    description: >-
                      The token_ids will be wrapped to bind the token ID to the
                      minter authority. The final string representation of the
                      token will be as follows: `imt:<minter_id>:<token_id>`
                    type: object
                    additionalProperties:
                      type: string
                additionalProperties: false
        nonce:
          type: string
          description: 'Encoding: base64'
          example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
        signer_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        verifying_contract:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
    Erc191Payload:
      description: >-
        See
        [ERC-191](https://github.com/ethereum/ercs/blob/master/ERCS/erc-191.md)
      type: string
    FeesConfig:
      type: object
      required:
        - fee
        - fee_collector
      properties:
        fee:
          description: 1 pip == 1/100th of bip == 0.0001%
          type: integer
          format: uint32
          minimum: 0
        fee_collector:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
      additionalProperties: false
    FtWithdraw:
      description: >-
        Withdraw given FT tokens from the intents contract to a given external
        account id (external being outside of intents).
      type: object
      required:
        - amount
        - receiver_id
        - token
      properties:
        amount:
          type: string
        memo:
          type: string
          nullable: true
        min_gas:
          description: >-
            Optional minimum required Near gas for created Promise to succeed: *
            `ft_transfer`:      minimum: 15TGas, default: 15TGas *
            `ft_transfer_call`: minimum: 30TGas, default: 50TGas


            Remaining gas will be distributed evenly across all Function Call
            Promises created during execution of current receipt.
          type: string
          nullable: true
        msg:
          description: >-
            Message to pass to `ft_transfer_call`. Otherwise, `ft_transfer` will
            be used. NOTE: No refund will be made in case of insufficient
            `storage_deposit` on `token` for `receiver_id`
          type: string
          nullable: true
        receiver_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        storage_deposit:
          description: >-
            Optionally make `storage_deposit` for `receiver_id` on `token`. The
            amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE:
            the `wNEAR` will not be refunded in case of fail
          type: string
          nullable: true
        token:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
      additionalProperties: false
    GlobalContractId:
      oneOf:
        - type: object
          required:
            - hash
          properties:
            hash:
              type: string
          additionalProperties: false
        - type: object
          required:
            - account_id
          properties:
            account_id:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
          additionalProperties: false
    Intent:
      oneOf:
        - description: See [`AddPublicKey`]
          type: object
          required:
            - intent
            - public_key
          properties:
            intent:
              type: string
              enum:
                - add_public_key
            public_key:
              type: string
              description: 'Encoding: base58'
              example: ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
          additionalProperties: false
        - description: See [`RemovePublicKey`]
          type: object
          required:
            - intent
            - public_key
          properties:
            intent:
              type: string
              enum:
                - remove_public_key
            public_key:
              type: string
              description: 'Encoding: base58'
              example: ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
          additionalProperties: false
        - description: See [`Transfer`]
          type: object
          required:
            - intent
            - receiver_id
            - tokens
          properties:
            intent:
              type: string
              enum:
                - transfer
            memo:
              type: string
              nullable: true
            min_gas:
              description: >-
                Minimum gas for `mt_on_transfer()`


                Remaining gas will be distributed evenly across all Function
                Call Promises created during execution of current receipt.
              type: string
              nullable: true
            msg:
              description: Message to pass to `mt_on_transfer`
              type: string
            receiver_id:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
            state_init:
              description: >-
                Optionally initialize the receiver's contract (Deterministic
                AccountId) via
                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                right before calling `mt_on_transfer()` (in the same receipt).
              anyOf:
                - oneOf:
                    - type: object
                      required:
                        - code
                        - data
                        - version
                      properties:
                        code:
                          oneOf:
                            - type: object
                              required:
                                - hash
                              properties:
                                hash:
                                  type: string
                              additionalProperties: false
                            - type: object
                              required:
                                - account_id
                              properties:
                                account_id:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                              additionalProperties: false
                        data:
                          type: object
                          additionalProperties:
                            type: string
                        version:
                          type: string
                          enum:
                            - v1
                      additionalProperties: false
                  nullable: true
            tokens:
              type: object
              additionalProperties:
                type: string
          additionalProperties: false
        - description: See [`FtWithdraw`]
          type: object
          required:
            - amount
            - intent
            - receiver_id
            - token
          properties:
            amount:
              type: string
            intent:
              type: string
              enum:
                - ft_withdraw
            memo:
              type: string
              nullable: true
            min_gas:
              description: >-
                Optional minimum required Near gas for created Promise to
                succeed: * `ft_transfer`:      minimum: 15TGas, default: 15TGas
                * `ft_transfer_call`: minimum: 30TGas, default: 50TGas


                Remaining gas will be distributed evenly across all Function
                Call Promises created during execution of current receipt.
              type: string
              nullable: true
            msg:
              description: >-
                Message to pass to `ft_transfer_call`. Otherwise, `ft_transfer`
                will be used. NOTE: No refund will be made in case of
                insufficient `storage_deposit` on `token` for `receiver_id`
              type: string
              nullable: true
            receiver_id:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
            storage_deposit:
              description: >-
                Optionally make `storage_deposit` for `receiver_id` on `token`.
                The amount will be subtracted from user's NEP-141 `wNEAR`
                balance. NOTE: the `wNEAR` will not be refunded in case of fail
              type: string
              nullable: true
            token:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
          additionalProperties: false
        - description: See [`NftWithdraw`]
          type: object
          required:
            - intent
            - receiver_id
            - token
            - token_id
          properties:
            intent:
              type: string
              enum:
                - nft_withdraw
            memo:
              type: string
              nullable: true
            min_gas:
              description: >-
                Optional minimum required Near gas for created Promise to
                succeed: * `nft_transfer`:      minimum: 15TGas, default: 15TGas
                * `nft_transfer_call`: minimum: 30TGas, default: 50TGas


                Remaining gas will be distributed evenly across all Function
                Call Promises created during execution of current receipt.
              type: string
              nullable: true
            msg:
              description: >-
                Message to pass to `nft_transfer_call`. Otherwise,
                `nft_transfer` will be used. NOTE: No refund will be made in
                case of insufficient `storage_deposit` on `token` for
                `receiver_id`
              type: string
              nullable: true
            receiver_id:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
            storage_deposit:
              description: >-
                Optionally make `storage_deposit` for `receiver_id` on `token`.
                The amount will be subtracted from user's NEP-141 `wNEAR`
                balance. NOTE: the `wNEAR` will not be refunded in case of fail
              type: string
              nullable: true
            token:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
            token_id:
              type: string
          additionalProperties: false
        - description: See [`MtWithdraw`]
          type: object
          required:
            - amounts
            - intent
            - receiver_id
            - token
            - token_ids
          properties:
            amounts:
              type: array
              items:
                type: string
            intent:
              type: string
              enum:
                - mt_withdraw
            memo:
              type: string
              nullable: true
            min_gas:
              description: >-
                Optional minimum required Near gas for created Promise to
                succeed per token: * `mt_batch_transfer`:      minimum: 20TGas,
                default: 20TGas * `mt_batch_transfer_call`: minimum: 35TGas,
                default: 50TGas


                Remaining gas will be distributed evenly across all Function
                Call Promises created during execution of current receipt.
              type: string
              nullable: true
            msg:
              description: >-
                Message to pass to `mt_batch_transfer_call`. Otherwise,
                `mt_batch_transfer` will be used. NOTE: No refund will be made
                in case of insufficient `storage_deposit` on `token` for
                `receiver_id`
              type: string
              nullable: true
            receiver_id:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
            storage_deposit:
              description: >-
                Optionally make `storage_deposit` for `receiver_id` on `token`.
                The amount will be subtracted from user's NEP-141 `wNEAR`
                balance. NOTE: the `wNEAR` will not be refunded in case of fail
              type: string
              nullable: true
            token:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
            token_ids:
              type: array
              items:
                type: string
          additionalProperties: false
        - description: See [`NativeWithdraw`]
          type: object
          required:
            - amount
            - intent
            - receiver_id
          properties:
            amount:
              type: string
            intent:
              type: string
              enum:
                - native_withdraw
            receiver_id:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
          additionalProperties: false
        - description: See [`StorageDeposit`]
          type: object
          required:
            - amount
            - contract_id
            - deposit_for_account_id
            - intent
          properties:
            amount:
              type: string
            contract_id:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
            deposit_for_account_id:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
            intent:
              type: string
              enum:
                - storage_deposit
          additionalProperties: false
        - description: See [`TokenDiff`]
          type: object
          required:
            - diff
            - intent
          properties:
            diff:
              type: object
              additionalProperties:
                type: string
            intent:
              type: string
              enum:
                - token_diff
            memo:
              type: string
              nullable: true
            referral:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
              nullable: true
          additionalProperties: false
        - description: See [`SetAuthByPredecessorId`]
          type: object
          required:
            - enabled
            - intent
          properties:
            enabled:
              type: boolean
            intent:
              type: string
              enum:
                - set_auth_by_predecessor_id
          additionalProperties: false
        - description: See [`AuthCall`]
          type: object
          required:
            - contract_id
            - intent
            - msg
          properties:
            attached_deposit:
              description: >-
                Optionally, attach deposit to
                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) call. The
                amount will be subtracted from user's NEP-141 `wNEAR` balance.


                NOTE: the `wNEAR` will not be refunded in case of fail.
              type: string
            contract_id:
              description: Callee for [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
              type: string
            intent:
              type: string
              enum:
                - auth_call
            min_gas:
              description: >-
                Optional minimum gas required for created promise to succeed. By
                default, only [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
                required.


                Remaining gas will be distributed evenly across all Function
                Call Promises created during execution of current receipt.
              type: string
              nullable: true
            msg:
              description: >-
                `msg` to pass in
                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
              type: string
            state_init:
              description: >-
                Optionally initialize the receiver's contract (Deterministic
                AccountId) via
                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                right before calling
                [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth) (in the
                same receipt).
              anyOf:
                - oneOf:
                    - type: object
                      required:
                        - code
                        - data
                        - version
                      properties:
                        code:
                          oneOf:
                            - type: object
                              required:
                                - hash
                              properties:
                                hash:
                                  type: string
                              additionalProperties: false
                            - type: object
                              required:
                                - account_id
                              properties:
                                account_id:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                              additionalProperties: false
                        data:
                          type: object
                          additionalProperties:
                            type: string
                        version:
                          type: string
                          enum:
                            - v1
                      additionalProperties: false
                  nullable: true
          additionalProperties: false
        - description: >-
            Mint a set of tokens from the signer to a specified account id,
            within the intents contract.
          type: object
          required:
            - intent
            - receiver_id
            - tokens
          properties:
            intent:
              type: string
              enum:
                - imt_mint
            memo:
              type: string
              nullable: true
            min_gas:
              description: >-
                Minimum gas for `mt_on_transfer()`


                Remaining gas will be distributed evenly across all Function
                Call Promises created during execution of current receipt.
              type: string
              nullable: true
            msg:
              description: Message to pass to `mt_on_transfer`
              type: string
            receiver_id:
              description: Receiver of the minted tokens
              type: string
            state_init:
              description: >-
                Optionally initialize the receiver's contract (Deterministic
                AccountId) via
                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                right before calling `mt_on_transfer()` (in the same receipt).
              anyOf:
                - oneOf:
                    - type: object
                      required:
                        - code
                        - data
                        - version
                      properties:
                        code:
                          oneOf:
                            - type: object
                              required:
                                - hash
                              properties:
                                hash:
                                  type: string
                              additionalProperties: false
                            - type: object
                              required:
                                - account_id
                              properties:
                                account_id:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                              additionalProperties: false
                        data:
                          type: object
                          additionalProperties:
                            type: string
                        version:
                          type: string
                          enum:
                            - v1
                      additionalProperties: false
                  nullable: true
            tokens:
              description: >-
                The token_ids will be wrapped to bind the token ID to the minter
                authority (i.e. signer of this intent). The final string
                representation of the token will be as follows:
                `imt:<minter_id>:<token_id>`
              type: object
              additionalProperties:
                type: string
          additionalProperties: false
        - description: Burn a set of imt tokens, within the intents contract.
          type: object
          required:
            - intent
            - minter_id
            - tokens
          properties:
            intent:
              type: string
              enum:
                - imt_burn
            memo:
              type: string
              nullable: true
            minter_id:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
            tokens:
              description: >-
                The token_ids will be wrapped to bind the token ID to the minter
                authority. The final string representation of the token will be
                as follows: `imt:<minter_id>:<token_id>`
              type: object
              additionalProperties:
                type: string
          additionalProperties: false
    IntentEvent_for_AccountEvent_for_NonceEvent:
      type: object
      required:
        - account_id
        - intent_hash
        - nonce
      properties:
        account_id:
          description: >-
            Account identifier. This is the human readable UTF-8 string which is
            used internally to index accounts on the network and their
            respective state.


            This is the "referenced" version of the account ID. It is to
            [`AccountId`] what [`str`] is to [`String`], and works quite
            similarly to [`Path`]. Like with [`str`] and [`Path`], you can't
            have a value of type `AccountIdRef`, but you can have a reference
            like `&AccountIdRef` or `&mut AccountIdRef`.


            This type supports zero-copy deserialization offered by
            [`serde`](https://docs.rs/serde/), but cannot do the same for
            [`borsh`](https://docs.rs/borsh/) since the latter does not support
            zero-copy.


            # Examples ``` use near_account_id::{AccountId, AccountIdRef}; use
            std::convert::{TryFrom, TryInto};


            // Construction let alice =
            AccountIdRef::new("alice.near").unwrap();
            assert!(AccountIdRef::new("invalid.").is_err()); ```


            [`FromStr`]: std::str::FromStr [`Path`]: std::path::Path
          type: string
        intent_hash:
          type: string
          description: 'Encoding: base58'
        nonce:
          type: string
          description: 'Encoding: base64'
      additionalProperties: false
    InvariantViolated:
      oneOf:
        - type: object
          required:
            - error
            - unmatched_deltas
          properties:
            error:
              type: string
              enum:
                - unmatched_deltas
            unmatched_deltas:
              type: object
              additionalProperties:
                type: string
          additionalProperties: false
        - type: object
          required:
            - error
          properties:
            error:
              type: string
              enum:
                - overflow
          additionalProperties: false
    MtWithdraw:
      description: >-
        Withdraw given MT tokens (i.e.
        [NEP-245](https://github.com/near/NEPs/blob/master/neps/nep-0245.md))
        from the intents contract to a given to an external account id (external
        being outside of intents).


        If `msg` is given, `mt_batch_transfer_call()` will be used to transfer
        to the `receiver_id`. Otherwise, `mt_batch_transfer()` will be used.
      type: object
      required:
        - amounts
        - receiver_id
        - token
        - token_ids
      properties:
        amounts:
          type: array
          items:
            type: string
        memo:
          type: string
          nullable: true
        min_gas:
          description: >-
            Optional minimum required Near gas for created Promise to succeed
            per token: * `mt_batch_transfer`:      minimum: 20TGas, default:
            20TGas * `mt_batch_transfer_call`: minimum: 35TGas, default: 50TGas


            Remaining gas will be distributed evenly across all Function Call
            Promises created during execution of current receipt.
          type: string
          nullable: true
        msg:
          description: >-
            Message to pass to `mt_batch_transfer_call`. Otherwise,
            `mt_batch_transfer` will be used. NOTE: No refund will be made in
            case of insufficient `storage_deposit` on `token` for `receiver_id`
          type: string
          nullable: true
        receiver_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        storage_deposit:
          description: >-
            Optionally make `storage_deposit` for `receiver_id` on `token`. The
            amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE:
            the `wNEAR` will not be refunded in case of fail
          type: string
          nullable: true
        token:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        token_ids:
          type: array
          items:
            type: string
      additionalProperties: false
    MultiPayload:
      description: >-
        Assuming wallets want to interact with Intents protocol, besides
        preparing the data in a certain form, they have to have the capability
        to sign raw messages (off-chain signatures) using an algorithm we
        understand. This enum solves that problem.


        For example, because we support ERC-191 and know how to verify messages
        with that standard, we can allow wallets, like Metamask, sign messages
        to perform intents without having to support new cryptographic
        primitives and signing standards.
      oneOf:
        - description: >-
            NEP-413: The standard for message signing in Near Protocol. For more
            details, refer to
            [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md).
          type: object
          required:
            - payload
            - public_key
            - signature
            - standard
          properties:
            payload:
              description: >-
                See
                [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md)
              type: object
              required:
                - message
                - nonce
                - recipient
              properties:
                callbackUrl:
                  type: string
                  nullable: true
                message:
                  type: string
                  x-parseJson:
                    type: object
                    required:
                      - deadline
                      - signer_id
                    properties:
                      deadline:
                        type: string
                      signer_id:
                        description: >-
                          NEAR Account Identifier.


                          This is a unique, syntactically valid, human-readable
                          account identifier on the NEAR network.


                          [See the crate-level docs for information about
                          validation.](index.html#account-id-rules)


                          Also see [Error kind
                          precedence](AccountId#error-kind-precedence).


                          ## Examples


                          ``` use near_account_id::AccountId;


                          let alice: AccountId = "alice.near".parse().unwrap();


                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                          // (ƒ is not f) ```
                        type: string
                      intents:
                        description: >-
                          Sequence of intents to execute in given order. Empty
                          list is also a valid sequence, i.e. it doesn't do
                          anything, but still invalidates the `nonce` for the
                          signer WARNING: Promises created by different intents
                          are executed concurrently and does not rely on the
                          order of the intents in this structure
                        type: array
                        items:
                          oneOf:
                            - description: See [`AddPublicKey`]
                              type: object
                              required:
                                - intent
                                - public_key
                              properties:
                                intent:
                                  type: string
                                  enum:
                                    - add_public_key
                                public_key:
                                  examples:
                                    - >-
                                      ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                    - >-
                                      secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                                  type: string
                                  description: 'Encoding: base58'
                              additionalProperties: false
                            - description: See [`RemovePublicKey`]
                              type: object
                              required:
                                - intent
                                - public_key
                              properties:
                                intent:
                                  type: string
                                  enum:
                                    - remove_public_key
                                public_key:
                                  examples:
                                    - >-
                                      ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                    - >-
                                      secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                                  type: string
                                  description: 'Encoding: base58'
                              additionalProperties: false
                            - description: See [`Transfer`]
                              type: object
                              required:
                                - intent
                                - receiver_id
                                - tokens
                              properties:
                                intent:
                                  type: string
                                  enum:
                                    - transfer
                                memo:
                                  type:
                                    - string
                                    - 'null'
                                min_gas:
                                  description: >-
                                    Minimum gas for `mt_on_transfer()`


                                    Remaining gas will be distributed evenly
                                    across all Function Call Promises created
                                    during execution of current receipt.
                                  type:
                                    - string
                                    - 'null'
                                msg:
                                  description: Message to pass to `mt_on_transfer`
                                  type: string
                                receiver_id:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                                state_init:
                                  description: >-
                                    Optionally initialize the receiver's
                                    contract (Deterministic AccountId) via
                                    [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                    right before calling `mt_on_transfer()` (in
                                    the same receipt).
                                  anyOf:
                                    - oneOf:
                                        - type: object
                                          required:
                                            - code
                                            - data
                                            - version
                                          properties:
                                            code:
                                              oneOf:
                                                - type: object
                                                  required:
                                                    - hash
                                                  properties:
                                                    hash:
                                                      type: string
                                                  additionalProperties: false
                                                - type: object
                                                  required:
                                                    - account_id
                                                  properties:
                                                    account_id:
                                                      description: >-
                                                        NEAR Account Identifier.


                                                        This is a unique, syntactically valid,
                                                        human-readable account identifier on the
                                                        NEAR network.


                                                        [See the crate-level docs for
                                                        information about
                                                        validation.](index.html#account-id-rules)


                                                        Also see [Error kind
                                                        precedence](AccountId#error-kind-precedence).


                                                        ## Examples


                                                        ``` use near_account_id::AccountId;


                                                        let alice: AccountId =
                                                        "alice.near".parse().unwrap();


                                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                        // (ƒ is not f) ```
                                                      type: string
                                                  additionalProperties: false
                                            data:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            version:
                                              type: string
                                              enum:
                                                - v1
                                          additionalProperties: false
                                    - type: 'null'
                                tokens:
                                  type: object
                                  additionalProperties:
                                    type: string
                              additionalProperties: false
                            - description: See [`FtWithdraw`]
                              type: object
                              required:
                                - amount
                                - intent
                                - receiver_id
                                - token
                              properties:
                                amount:
                                  type: string
                                intent:
                                  type: string
                                  enum:
                                    - ft_withdraw
                                memo:
                                  type:
                                    - string
                                    - 'null'
                                min_gas:
                                  description: >-
                                    Optional minimum required Near gas for
                                    created Promise to succeed: *
                                    `ft_transfer`:      minimum: 15TGas,
                                    default: 15TGas * `ft_transfer_call`:
                                    minimum: 30TGas, default: 50TGas


                                    Remaining gas will be distributed evenly
                                    across all Function Call Promises created
                                    during execution of current receipt.
                                  type:
                                    - string
                                    - 'null'
                                msg:
                                  description: >-
                                    Message to pass to `ft_transfer_call`.
                                    Otherwise, `ft_transfer` will be used. NOTE:
                                    No refund will be made in case of
                                    insufficient `storage_deposit` on `token`
                                    for `receiver_id`
                                  type:
                                    - string
                                    - 'null'
                                receiver_id:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                                storage_deposit:
                                  description: >-
                                    Optionally make `storage_deposit` for
                                    `receiver_id` on `token`. The amount will be
                                    subtracted from user's NEP-141 `wNEAR`
                                    balance. NOTE: the `wNEAR` will not be
                                    refunded in case of fail
                                  type:
                                    - string
                                    - 'null'
                                token:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                              additionalProperties: false
                            - description: See [`NftWithdraw`]
                              type: object
                              required:
                                - intent
                                - receiver_id
                                - token
                                - token_id
                              properties:
                                intent:
                                  type: string
                                  enum:
                                    - nft_withdraw
                                memo:
                                  type:
                                    - string
                                    - 'null'
                                min_gas:
                                  description: >-
                                    Optional minimum required Near gas for
                                    created Promise to succeed: *
                                    `nft_transfer`:      minimum: 15TGas,
                                    default: 15TGas * `nft_transfer_call`:
                                    minimum: 30TGas, default: 50TGas


                                    Remaining gas will be distributed evenly
                                    across all Function Call Promises created
                                    during execution of current receipt.
                                  type:
                                    - string
                                    - 'null'
                                msg:
                                  description: >-
                                    Message to pass to `nft_transfer_call`.
                                    Otherwise, `nft_transfer` will be used.
                                    NOTE: No refund will be made in case of
                                    insufficient `storage_deposit` on `token`
                                    for `receiver_id`
                                  type:
                                    - string
                                    - 'null'
                                receiver_id:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                                storage_deposit:
                                  description: >-
                                    Optionally make `storage_deposit` for
                                    `receiver_id` on `token`. The amount will be
                                    subtracted from user's NEP-141 `wNEAR`
                                    balance. NOTE: the `wNEAR` will not be
                                    refunded in case of fail
                                  type:
                                    - string
                                    - 'null'
                                token:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                                token_id:
                                  type: string
                              additionalProperties: false
                            - description: See [`MtWithdraw`]
                              type: object
                              required:
                                - amounts
                                - intent
                                - receiver_id
                                - token
                                - token_ids
                              properties:
                                amounts:
                                  type: array
                                  items:
                                    type: string
                                intent:
                                  type: string
                                  enum:
                                    - mt_withdraw
                                memo:
                                  type:
                                    - string
                                    - 'null'
                                min_gas:
                                  description: >-
                                    Optional minimum required Near gas for
                                    created Promise to succeed per token: *
                                    `mt_batch_transfer`:      minimum: 20TGas,
                                    default: 20TGas * `mt_batch_transfer_call`:
                                    minimum: 35TGas, default: 50TGas


                                    Remaining gas will be distributed evenly
                                    across all Function Call Promises created
                                    during execution of current receipt.
                                  type:
                                    - string
                                    - 'null'
                                msg:
                                  description: >-
                                    Message to pass to `mt_batch_transfer_call`.
                                    Otherwise, `mt_batch_transfer` will be used.
                                    NOTE: No refund will be made in case of
                                    insufficient `storage_deposit` on `token`
                                    for `receiver_id`
                                  type:
                                    - string
                                    - 'null'
                                receiver_id:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                                storage_deposit:
                                  description: >-
                                    Optionally make `storage_deposit` for
                                    `receiver_id` on `token`. The amount will be
                                    subtracted from user's NEP-141 `wNEAR`
                                    balance. NOTE: the `wNEAR` will not be
                                    refunded in case of fail
                                  type:
                                    - string
                                    - 'null'
                                token:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                                token_ids:
                                  type: array
                                  items:
                                    type: string
                              additionalProperties: false
                            - description: See [`NativeWithdraw`]
                              type: object
                              required:
                                - amount
                                - intent
                                - receiver_id
                              properties:
                                amount:
                                  type: string
                                intent:
                                  type: string
                                  enum:
                                    - native_withdraw
                                receiver_id:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                              additionalProperties: false
                            - description: See [`StorageDeposit`]
                              type: object
                              required:
                                - amount
                                - contract_id
                                - deposit_for_account_id
                                - intent
                              properties:
                                amount:
                                  type: string
                                contract_id:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                                deposit_for_account_id:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                                intent:
                                  type: string
                                  enum:
                                    - storage_deposit
                              additionalProperties: false
                            - description: See [`TokenDiff`]
                              type: object
                              required:
                                - diff
                                - intent
                              properties:
                                diff:
                                  type: object
                                  additionalProperties:
                                    type: string
                                intent:
                                  type: string
                                  enum:
                                    - token_diff
                                memo:
                                  type:
                                    - string
                                    - 'null'
                                referral:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type:
                                    - string
                                    - 'null'
                              additionalProperties: false
                            - description: See [`SetAuthByPredecessorId`]
                              type: object
                              required:
                                - enabled
                                - intent
                              properties:
                                enabled:
                                  type: boolean
                                intent:
                                  type: string
                                  enum:
                                    - set_auth_by_predecessor_id
                              additionalProperties: false
                            - description: See [`AuthCall`]
                              type: object
                              required:
                                - contract_id
                                - intent
                                - msg
                              properties:
                                attached_deposit:
                                  description: >-
                                    Optionally, attach deposit to
                                    [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                    call. The amount will be subtracted from
                                    user's NEP-141 `wNEAR` balance.


                                    NOTE: the `wNEAR` will not be refunded in
                                    case of fail.
                                  type: string
                                contract_id:
                                  description: >-
                                    Callee for
                                    [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  type: string
                                intent:
                                  type: string
                                  enum:
                                    - auth_call
                                min_gas:
                                  description: >-
                                    Optional minimum gas required for created
                                    promise to succeed. By default, only
                                    [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                    is required.


                                    Remaining gas will be distributed evenly
                                    across all Function Call Promises created
                                    during execution of current receipt.
                                  type:
                                    - string
                                    - 'null'
                                msg:
                                  description: >-
                                    `msg` to pass in
                                    [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  type: string
                                state_init:
                                  description: >-
                                    Optionally initialize the receiver's
                                    contract (Deterministic AccountId) via
                                    [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                    right before calling
                                    [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                    (in the same receipt).
                                  anyOf:
                                    - oneOf:
                                        - type: object
                                          required:
                                            - code
                                            - data
                                            - version
                                          properties:
                                            code:
                                              oneOf:
                                                - type: object
                                                  required:
                                                    - hash
                                                  properties:
                                                    hash:
                                                      type: string
                                                  additionalProperties: false
                                                - type: object
                                                  required:
                                                    - account_id
                                                  properties:
                                                    account_id:
                                                      description: >-
                                                        NEAR Account Identifier.


                                                        This is a unique, syntactically valid,
                                                        human-readable account identifier on the
                                                        NEAR network.


                                                        [See the crate-level docs for
                                                        information about
                                                        validation.](index.html#account-id-rules)


                                                        Also see [Error kind
                                                        precedence](AccountId#error-kind-precedence).


                                                        ## Examples


                                                        ``` use near_account_id::AccountId;


                                                        let alice: AccountId =
                                                        "alice.near".parse().unwrap();


                                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                        // (ƒ is not f) ```
                                                      type: string
                                                  additionalProperties: false
                                            data:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            version:
                                              type: string
                                              enum:
                                                - v1
                                          additionalProperties: false
                                    - type: 'null'
                              additionalProperties: false
                            - description: >-
                                Mint a set of tokens from the signer to a
                                specified account id, within the intents
                                contract.
                              type: object
                              required:
                                - intent
                                - receiver_id
                                - tokens
                              properties:
                                intent:
                                  type: string
                                  enum:
                                    - imt_mint
                                memo:
                                  type:
                                    - string
                                    - 'null'
                                min_gas:
                                  description: >-
                                    Minimum gas for `mt_on_transfer()`


                                    Remaining gas will be distributed evenly
                                    across all Function Call Promises created
                                    during execution of current receipt.
                                  type:
                                    - string
                                    - 'null'
                                msg:
                                  description: Message to pass to `mt_on_transfer`
                                  type: string
                                receiver_id:
                                  description: Receiver of the minted tokens
                                  type: string
                                state_init:
                                  description: >-
                                    Optionally initialize the receiver's
                                    contract (Deterministic AccountId) via
                                    [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                    right before calling `mt_on_transfer()` (in
                                    the same receipt).
                                  anyOf:
                                    - oneOf:
                                        - type: object
                                          required:
                                            - code
                                            - data
                                            - version
                                          properties:
                                            code:
                                              oneOf:
                                                - type: object
                                                  required:
                                                    - hash
                                                  properties:
                                                    hash:
                                                      type: string
                                                  additionalProperties: false
                                                - type: object
                                                  required:
                                                    - account_id
                                                  properties:
                                                    account_id:
                                                      description: >-
                                                        NEAR Account Identifier.


                                                        This is a unique, syntactically valid,
                                                        human-readable account identifier on the
                                                        NEAR network.


                                                        [See the crate-level docs for
                                                        information about
                                                        validation.](index.html#account-id-rules)


                                                        Also see [Error kind
                                                        precedence](AccountId#error-kind-precedence).


                                                        ## Examples


                                                        ``` use near_account_id::AccountId;


                                                        let alice: AccountId =
                                                        "alice.near".parse().unwrap();


                                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                        // (ƒ is not f) ```
                                                      type: string
                                                  additionalProperties: false
                                            data:
                                              type: object
                                              additionalProperties:
                                                type: string
                                            version:
                                              type: string
                                              enum:
                                                - v1
                                          additionalProperties: false
                                    - type: 'null'
                                tokens:
                                  description: >-
                                    The token_ids will be wrapped to bind the
                                    token ID to the minter authority (i.e.
                                    signer of this intent). The final string
                                    representation of the token will be as
                                    follows: `imt:<minter_id>:<token_id>`
                                  type: object
                                  additionalProperties:
                                    type: string
                              additionalProperties: false
                            - description: >-
                                Burn a set of imt tokens, within the intents
                                contract.
                              type: object
                              required:
                                - intent
                                - minter_id
                                - tokens
                              properties:
                                intent:
                                  type: string
                                  enum:
                                    - imt_burn
                                memo:
                                  type:
                                    - string
                                    - 'null'
                                minter_id:
                                  description: >-
                                    NEAR Account Identifier.


                                    This is a unique, syntactically valid,
                                    human-readable account identifier on the
                                    NEAR network.


                                    [See the crate-level docs for information
                                    about
                                    validation.](index.html#account-id-rules)


                                    Also see [Error kind
                                    precedence](AccountId#error-kind-precedence).


                                    ## Examples


                                    ``` use near_account_id::AccountId;


                                    let alice: AccountId =
                                    "alice.near".parse().unwrap();


                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                    // (ƒ is not f) ```
                                  type: string
                                tokens:
                                  description: >-
                                    The token_ids will be wrapped to bind the
                                    token ID to the minter authority. The final
                                    string representation of the token will be
                                    as follows: `imt:<minter_id>:<token_id>`
                                  type: object
                                  additionalProperties:
                                    type: string
                              additionalProperties: false
                nonce:
                  type: string
                  description: 'Encoding: base64'
                recipient:
                  type: string
              additionalProperties: false
            public_key:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            standard:
              type: string
              enum:
                - nep413
          additionalProperties: false
        - description: >-
            ERC-191: The standard for message signing in Ethereum, commonly used
            with `personal_sign()`. For more details, refer to
            [EIP-191](https://eips.ethereum.org/EIPS/eip-191).
          type: object
          required:
            - payload
            - signature
            - standard
          properties:
            payload:
              description: >-
                See
                [ERC-191](https://github.com/ethereum/ercs/blob/master/ERCS/erc-191.md)
              type: string
              x-parseJson:
                type: object
                required:
                  - deadline
                  - nonce
                  - signer_id
                  - verifying_contract
                properties:
                  deadline:
                    type: string
                  intents:
                    description: >-
                      Sequence of intents to execute in given order. Empty list
                      is also a valid sequence, i.e. it doesn't do anything, but
                      still invalidates the `nonce` for the signer WARNING:
                      Promises created by different intents are executed
                      concurrently and does not rely on the order of the intents
                      in this structure
                    type: array
                    items:
                      oneOf:
                        - description: See [`AddPublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - add_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`RemovePublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - remove_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`Transfer`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - transfer
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: See [`FtWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                            - token
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - ft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `ft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `ft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `ft_transfer_call`.
                                Otherwise, `ft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`NftWithdraw`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - token
                            - token_id
                          properties:
                            intent:
                              type: string
                              enum:
                                - nft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `nft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `nft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `nft_transfer_call`.
                                Otherwise, `nft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_id:
                              type: string
                          additionalProperties: false
                        - description: See [`MtWithdraw`]
                          type: object
                          required:
                            - amounts
                            - intent
                            - receiver_id
                            - token
                            - token_ids
                          properties:
                            amounts:
                              type: array
                              items:
                                type: string
                            intent:
                              type: string
                              enum:
                                - mt_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed per token: *
                                `mt_batch_transfer`:      minimum: 20TGas,
                                default: 20TGas * `mt_batch_transfer_call`:
                                minimum: 35TGas, default: 50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `mt_batch_transfer_call`.
                                Otherwise, `mt_batch_transfer` will be used.
                                NOTE: No refund will be made in case of
                                insufficient `storage_deposit` on `token` for
                                `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_ids:
                              type: array
                              items:
                                type: string
                          additionalProperties: false
                        - description: See [`NativeWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - native_withdraw
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`StorageDeposit`]
                          type: object
                          required:
                            - amount
                            - contract_id
                            - deposit_for_account_id
                            - intent
                          properties:
                            amount:
                              type: string
                            contract_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            deposit_for_account_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            intent:
                              type: string
                              enum:
                                - storage_deposit
                          additionalProperties: false
                        - description: See [`TokenDiff`]
                          type: object
                          required:
                            - diff
                            - intent
                          properties:
                            diff:
                              type: object
                              additionalProperties:
                                type: string
                            intent:
                              type: string
                              enum:
                                - token_diff
                            memo:
                              type:
                                - string
                                - 'null'
                            referral:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type:
                                - string
                                - 'null'
                          additionalProperties: false
                        - description: See [`SetAuthByPredecessorId`]
                          type: object
                          required:
                            - enabled
                            - intent
                          properties:
                            enabled:
                              type: boolean
                            intent:
                              type: string
                              enum:
                                - set_auth_by_predecessor_id
                          additionalProperties: false
                        - description: See [`AuthCall`]
                          type: object
                          required:
                            - contract_id
                            - intent
                            - msg
                          properties:
                            attached_deposit:
                              description: >-
                                Optionally, attach deposit to
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                call. The amount will be subtracted from user's
                                NEP-141 `wNEAR` balance.


                                NOTE: the `wNEAR` will not be refunded in case
                                of fail.
                              type: string
                            contract_id:
                              description: >-
                                Callee for
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            intent:
                              type: string
                              enum:
                                - auth_call
                            min_gas:
                              description: >-
                                Optional minimum gas required for created
                                promise to succeed. By default, only
                                [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                is required.


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                `msg` to pass in
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling
                                [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                (in the same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                          additionalProperties: false
                        - description: >-
                            Mint a set of tokens from the signer to a specified
                            account id, within the intents contract.
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_mint
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: Receiver of the minted tokens
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority (i.e. signer of this
                                intent). The final string representation of the
                                token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: >-
                            Burn a set of imt tokens, within the intents
                            contract.
                          type: object
                          required:
                            - intent
                            - minter_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_burn
                            memo:
                              type:
                                - string
                                - 'null'
                            minter_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority. The final string
                                representation of the token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                  nonce:
                    examples:
                      - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    type: string
                    description: 'Encoding: base64'
                  signer_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  verifying_contract:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
            signature:
              description: >-
                There is no public key member because the public key can be
                recovered via `ecrecover()` knowing the data and the signature.
                Encoding: base58
              type: string
              pattern: '^secp256k1:'
            standard:
              type: string
              enum:
                - erc191
          additionalProperties: false
        - description: >-
            TIP-191: The standard for message signing in Tron. For more details,
            refer to
            [TIP-191](https://github.com/tronprotocol/tips/blob/master/tip-191.md).
          type: object
          required:
            - payload
            - signature
            - standard
          properties:
            payload:
              description: >-
                See
                [TIP-191](https://github.com/tronprotocol/tips/blob/master/tip-191.md)
              type: string
              x-parseJson:
                type: object
                required:
                  - deadline
                  - nonce
                  - signer_id
                  - verifying_contract
                properties:
                  deadline:
                    type: string
                  intents:
                    description: >-
                      Sequence of intents to execute in given order. Empty list
                      is also a valid sequence, i.e. it doesn't do anything, but
                      still invalidates the `nonce` for the signer WARNING:
                      Promises created by different intents are executed
                      concurrently and does not rely on the order of the intents
                      in this structure
                    type: array
                    items:
                      oneOf:
                        - description: See [`AddPublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - add_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`RemovePublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - remove_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`Transfer`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - transfer
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: See [`FtWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                            - token
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - ft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `ft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `ft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `ft_transfer_call`.
                                Otherwise, `ft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`NftWithdraw`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - token
                            - token_id
                          properties:
                            intent:
                              type: string
                              enum:
                                - nft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `nft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `nft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `nft_transfer_call`.
                                Otherwise, `nft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_id:
                              type: string
                          additionalProperties: false
                        - description: See [`MtWithdraw`]
                          type: object
                          required:
                            - amounts
                            - intent
                            - receiver_id
                            - token
                            - token_ids
                          properties:
                            amounts:
                              type: array
                              items:
                                type: string
                            intent:
                              type: string
                              enum:
                                - mt_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed per token: *
                                `mt_batch_transfer`:      minimum: 20TGas,
                                default: 20TGas * `mt_batch_transfer_call`:
                                minimum: 35TGas, default: 50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `mt_batch_transfer_call`.
                                Otherwise, `mt_batch_transfer` will be used.
                                NOTE: No refund will be made in case of
                                insufficient `storage_deposit` on `token` for
                                `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_ids:
                              type: array
                              items:
                                type: string
                          additionalProperties: false
                        - description: See [`NativeWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - native_withdraw
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`StorageDeposit`]
                          type: object
                          required:
                            - amount
                            - contract_id
                            - deposit_for_account_id
                            - intent
                          properties:
                            amount:
                              type: string
                            contract_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            deposit_for_account_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            intent:
                              type: string
                              enum:
                                - storage_deposit
                          additionalProperties: false
                        - description: See [`TokenDiff`]
                          type: object
                          required:
                            - diff
                            - intent
                          properties:
                            diff:
                              type: object
                              additionalProperties:
                                type: string
                            intent:
                              type: string
                              enum:
                                - token_diff
                            memo:
                              type:
                                - string
                                - 'null'
                            referral:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type:
                                - string
                                - 'null'
                          additionalProperties: false
                        - description: See [`SetAuthByPredecessorId`]
                          type: object
                          required:
                            - enabled
                            - intent
                          properties:
                            enabled:
                              type: boolean
                            intent:
                              type: string
                              enum:
                                - set_auth_by_predecessor_id
                          additionalProperties: false
                        - description: See [`AuthCall`]
                          type: object
                          required:
                            - contract_id
                            - intent
                            - msg
                          properties:
                            attached_deposit:
                              description: >-
                                Optionally, attach deposit to
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                call. The amount will be subtracted from user's
                                NEP-141 `wNEAR` balance.


                                NOTE: the `wNEAR` will not be refunded in case
                                of fail.
                              type: string
                            contract_id:
                              description: >-
                                Callee for
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            intent:
                              type: string
                              enum:
                                - auth_call
                            min_gas:
                              description: >-
                                Optional minimum gas required for created
                                promise to succeed. By default, only
                                [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                is required.


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                `msg` to pass in
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling
                                [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                (in the same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                          additionalProperties: false
                        - description: >-
                            Mint a set of tokens from the signer to a specified
                            account id, within the intents contract.
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_mint
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: Receiver of the minted tokens
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority (i.e. signer of this
                                intent). The final string representation of the
                                token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: >-
                            Burn a set of imt tokens, within the intents
                            contract.
                          type: object
                          required:
                            - intent
                            - minter_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_burn
                            memo:
                              type:
                                - string
                                - 'null'
                            minter_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority. The final string
                                representation of the token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                  nonce:
                    examples:
                      - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    type: string
                    description: 'Encoding: base64'
                  signer_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  verifying_contract:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
            signature:
              description: >-
                There is no public key member because the public key can be
                recovered via `ecrecover()` knowing the data and the signature.
                Encoding: base58
              type: string
              pattern: '^secp256k1:'
            standard:
              type: string
              enum:
                - tip191
          additionalProperties: false
        - description: >-
            Raw Ed25519: The standard used by Solana Phantom wallets for message
            signing. For more details, refer to [Phantom Wallet's
            documentation](https://docs.phantom.com/solana/signing-a-message).
          type: object
          required:
            - payload
            - public_key
            - signature
            - standard
          properties:
            payload:
              type: string
              x-parseJson:
                type: object
                required:
                  - deadline
                  - nonce
                  - signer_id
                  - verifying_contract
                properties:
                  deadline:
                    type: string
                  intents:
                    description: >-
                      Sequence of intents to execute in given order. Empty list
                      is also a valid sequence, i.e. it doesn't do anything, but
                      still invalidates the `nonce` for the signer WARNING:
                      Promises created by different intents are executed
                      concurrently and does not rely on the order of the intents
                      in this structure
                    type: array
                    items:
                      oneOf:
                        - description: See [`AddPublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - add_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`RemovePublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - remove_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`Transfer`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - transfer
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: See [`FtWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                            - token
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - ft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `ft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `ft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `ft_transfer_call`.
                                Otherwise, `ft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`NftWithdraw`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - token
                            - token_id
                          properties:
                            intent:
                              type: string
                              enum:
                                - nft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `nft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `nft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `nft_transfer_call`.
                                Otherwise, `nft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_id:
                              type: string
                          additionalProperties: false
                        - description: See [`MtWithdraw`]
                          type: object
                          required:
                            - amounts
                            - intent
                            - receiver_id
                            - token
                            - token_ids
                          properties:
                            amounts:
                              type: array
                              items:
                                type: string
                            intent:
                              type: string
                              enum:
                                - mt_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed per token: *
                                `mt_batch_transfer`:      minimum: 20TGas,
                                default: 20TGas * `mt_batch_transfer_call`:
                                minimum: 35TGas, default: 50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `mt_batch_transfer_call`.
                                Otherwise, `mt_batch_transfer` will be used.
                                NOTE: No refund will be made in case of
                                insufficient `storage_deposit` on `token` for
                                `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_ids:
                              type: array
                              items:
                                type: string
                          additionalProperties: false
                        - description: See [`NativeWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - native_withdraw
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`StorageDeposit`]
                          type: object
                          required:
                            - amount
                            - contract_id
                            - deposit_for_account_id
                            - intent
                          properties:
                            amount:
                              type: string
                            contract_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            deposit_for_account_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            intent:
                              type: string
                              enum:
                                - storage_deposit
                          additionalProperties: false
                        - description: See [`TokenDiff`]
                          type: object
                          required:
                            - diff
                            - intent
                          properties:
                            diff:
                              type: object
                              additionalProperties:
                                type: string
                            intent:
                              type: string
                              enum:
                                - token_diff
                            memo:
                              type:
                                - string
                                - 'null'
                            referral:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type:
                                - string
                                - 'null'
                          additionalProperties: false
                        - description: See [`SetAuthByPredecessorId`]
                          type: object
                          required:
                            - enabled
                            - intent
                          properties:
                            enabled:
                              type: boolean
                            intent:
                              type: string
                              enum:
                                - set_auth_by_predecessor_id
                          additionalProperties: false
                        - description: See [`AuthCall`]
                          type: object
                          required:
                            - contract_id
                            - intent
                            - msg
                          properties:
                            attached_deposit:
                              description: >-
                                Optionally, attach deposit to
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                call. The amount will be subtracted from user's
                                NEP-141 `wNEAR` balance.


                                NOTE: the `wNEAR` will not be refunded in case
                                of fail.
                              type: string
                            contract_id:
                              description: >-
                                Callee for
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            intent:
                              type: string
                              enum:
                                - auth_call
                            min_gas:
                              description: >-
                                Optional minimum gas required for created
                                promise to succeed. By default, only
                                [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                is required.


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                `msg` to pass in
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling
                                [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                (in the same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                          additionalProperties: false
                        - description: >-
                            Mint a set of tokens from the signer to a specified
                            account id, within the intents contract.
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_mint
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: Receiver of the minted tokens
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority (i.e. signer of this
                                intent). The final string representation of the
                                token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: >-
                            Burn a set of imt tokens, within the intents
                            contract.
                          type: object
                          required:
                            - intent
                            - minter_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_burn
                            memo:
                              type:
                                - string
                                - 'null'
                            minter_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority. The final string
                                representation of the token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                  nonce:
                    examples:
                      - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    type: string
                    description: 'Encoding: base64'
                  signer_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  verifying_contract:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
            public_key:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            standard:
              type: string
              enum:
                - raw_ed25519
          additionalProperties: false
        - type: object
          required:
            - authenticator_data
            - client_data_json
            - payload
            - standard
            - public_key
            - signature
          properties:
            authenticator_data:
              description: >-
                Base64Url-encoded
                [authenticatorData](https://w3c.github.io/webauthn/#authenticator-data).
                Encoding: base64
              type: string
            client_data_json:
              description: >-
                Serialized
                [clientDataJSON](https://w3c.github.io/webauthn/#dom-authenticatorresponse-clientdatajson)
              type: string
            payload:
              type: string
              x-parseJson:
                type: object
                required:
                  - deadline
                  - nonce
                  - signer_id
                  - verifying_contract
                properties:
                  deadline:
                    type: string
                  intents:
                    description: >-
                      Sequence of intents to execute in given order. Empty list
                      is also a valid sequence, i.e. it doesn't do anything, but
                      still invalidates the `nonce` for the signer WARNING:
                      Promises created by different intents are executed
                      concurrently and does not rely on the order of the intents
                      in this structure
                    type: array
                    items:
                      oneOf:
                        - description: See [`AddPublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - add_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`RemovePublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - remove_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`Transfer`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - transfer
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: See [`FtWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                            - token
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - ft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `ft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `ft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `ft_transfer_call`.
                                Otherwise, `ft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`NftWithdraw`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - token
                            - token_id
                          properties:
                            intent:
                              type: string
                              enum:
                                - nft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `nft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `nft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `nft_transfer_call`.
                                Otherwise, `nft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_id:
                              type: string
                          additionalProperties: false
                        - description: See [`MtWithdraw`]
                          type: object
                          required:
                            - amounts
                            - intent
                            - receiver_id
                            - token
                            - token_ids
                          properties:
                            amounts:
                              type: array
                              items:
                                type: string
                            intent:
                              type: string
                              enum:
                                - mt_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed per token: *
                                `mt_batch_transfer`:      minimum: 20TGas,
                                default: 20TGas * `mt_batch_transfer_call`:
                                minimum: 35TGas, default: 50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `mt_batch_transfer_call`.
                                Otherwise, `mt_batch_transfer` will be used.
                                NOTE: No refund will be made in case of
                                insufficient `storage_deposit` on `token` for
                                `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_ids:
                              type: array
                              items:
                                type: string
                          additionalProperties: false
                        - description: See [`NativeWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - native_withdraw
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`StorageDeposit`]
                          type: object
                          required:
                            - amount
                            - contract_id
                            - deposit_for_account_id
                            - intent
                          properties:
                            amount:
                              type: string
                            contract_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            deposit_for_account_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            intent:
                              type: string
                              enum:
                                - storage_deposit
                          additionalProperties: false
                        - description: See [`TokenDiff`]
                          type: object
                          required:
                            - diff
                            - intent
                          properties:
                            diff:
                              type: object
                              additionalProperties:
                                type: string
                            intent:
                              type: string
                              enum:
                                - token_diff
                            memo:
                              type:
                                - string
                                - 'null'
                            referral:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type:
                                - string
                                - 'null'
                          additionalProperties: false
                        - description: See [`SetAuthByPredecessorId`]
                          type: object
                          required:
                            - enabled
                            - intent
                          properties:
                            enabled:
                              type: boolean
                            intent:
                              type: string
                              enum:
                                - set_auth_by_predecessor_id
                          additionalProperties: false
                        - description: See [`AuthCall`]
                          type: object
                          required:
                            - contract_id
                            - intent
                            - msg
                          properties:
                            attached_deposit:
                              description: >-
                                Optionally, attach deposit to
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                call. The amount will be subtracted from user's
                                NEP-141 `wNEAR` balance.


                                NOTE: the `wNEAR` will not be refunded in case
                                of fail.
                              type: string
                            contract_id:
                              description: >-
                                Callee for
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            intent:
                              type: string
                              enum:
                                - auth_call
                            min_gas:
                              description: >-
                                Optional minimum gas required for created
                                promise to succeed. By default, only
                                [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                is required.


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                `msg` to pass in
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling
                                [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                (in the same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                          additionalProperties: false
                        - description: >-
                            Mint a set of tokens from the signer to a specified
                            account id, within the intents contract.
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_mint
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: Receiver of the minted tokens
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority (i.e. signer of this
                                intent). The final string representation of the
                                token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: >-
                            Burn a set of imt tokens, within the intents
                            contract.
                          type: object
                          required:
                            - intent
                            - minter_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_burn
                            memo:
                              type:
                                - string
                                - 'null'
                            minter_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority. The final string
                                representation of the token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                  nonce:
                    examples:
                      - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    type: string
                    description: 'Encoding: base64'
                  signer_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  verifying_contract:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
            standard:
              type: string
              enum:
                - webauthn
            public_key:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
          description: >-
            [COSE EdDSA (-8)
            algorithm](https://www.iana.org/assignments/cose/cose.xhtml#algorithms):
            ed25519 curve
          additionalProperties: false
        - type: object
          required:
            - authenticator_data
            - client_data_json
            - payload
            - standard
            - public_key
            - signature
          properties:
            authenticator_data:
              description: >-
                Base64Url-encoded
                [authenticatorData](https://w3c.github.io/webauthn/#authenticator-data).
                Encoding: base64
              type: string
            client_data_json:
              description: >-
                Serialized
                [clientDataJSON](https://w3c.github.io/webauthn/#dom-authenticatorresponse-clientdatajson)
              type: string
            payload:
              type: string
              x-parseJson:
                type: object
                required:
                  - deadline
                  - nonce
                  - signer_id
                  - verifying_contract
                properties:
                  deadline:
                    type: string
                  intents:
                    description: >-
                      Sequence of intents to execute in given order. Empty list
                      is also a valid sequence, i.e. it doesn't do anything, but
                      still invalidates the `nonce` for the signer WARNING:
                      Promises created by different intents are executed
                      concurrently and does not rely on the order of the intents
                      in this structure
                    type: array
                    items:
                      oneOf:
                        - description: See [`AddPublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - add_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`RemovePublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - remove_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`Transfer`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - transfer
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: See [`FtWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                            - token
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - ft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `ft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `ft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `ft_transfer_call`.
                                Otherwise, `ft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`NftWithdraw`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - token
                            - token_id
                          properties:
                            intent:
                              type: string
                              enum:
                                - nft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `nft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `nft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `nft_transfer_call`.
                                Otherwise, `nft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_id:
                              type: string
                          additionalProperties: false
                        - description: See [`MtWithdraw`]
                          type: object
                          required:
                            - amounts
                            - intent
                            - receiver_id
                            - token
                            - token_ids
                          properties:
                            amounts:
                              type: array
                              items:
                                type: string
                            intent:
                              type: string
                              enum:
                                - mt_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed per token: *
                                `mt_batch_transfer`:      minimum: 20TGas,
                                default: 20TGas * `mt_batch_transfer_call`:
                                minimum: 35TGas, default: 50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `mt_batch_transfer_call`.
                                Otherwise, `mt_batch_transfer` will be used.
                                NOTE: No refund will be made in case of
                                insufficient `storage_deposit` on `token` for
                                `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_ids:
                              type: array
                              items:
                                type: string
                          additionalProperties: false
                        - description: See [`NativeWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - native_withdraw
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`StorageDeposit`]
                          type: object
                          required:
                            - amount
                            - contract_id
                            - deposit_for_account_id
                            - intent
                          properties:
                            amount:
                              type: string
                            contract_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            deposit_for_account_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            intent:
                              type: string
                              enum:
                                - storage_deposit
                          additionalProperties: false
                        - description: See [`TokenDiff`]
                          type: object
                          required:
                            - diff
                            - intent
                          properties:
                            diff:
                              type: object
                              additionalProperties:
                                type: string
                            intent:
                              type: string
                              enum:
                                - token_diff
                            memo:
                              type:
                                - string
                                - 'null'
                            referral:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type:
                                - string
                                - 'null'
                          additionalProperties: false
                        - description: See [`SetAuthByPredecessorId`]
                          type: object
                          required:
                            - enabled
                            - intent
                          properties:
                            enabled:
                              type: boolean
                            intent:
                              type: string
                              enum:
                                - set_auth_by_predecessor_id
                          additionalProperties: false
                        - description: See [`AuthCall`]
                          type: object
                          required:
                            - contract_id
                            - intent
                            - msg
                          properties:
                            attached_deposit:
                              description: >-
                                Optionally, attach deposit to
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                call. The amount will be subtracted from user's
                                NEP-141 `wNEAR` balance.


                                NOTE: the `wNEAR` will not be refunded in case
                                of fail.
                              type: string
                            contract_id:
                              description: >-
                                Callee for
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            intent:
                              type: string
                              enum:
                                - auth_call
                            min_gas:
                              description: >-
                                Optional minimum gas required for created
                                promise to succeed. By default, only
                                [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                is required.


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                `msg` to pass in
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling
                                [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                (in the same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                          additionalProperties: false
                        - description: >-
                            Mint a set of tokens from the signer to a specified
                            account id, within the intents contract.
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_mint
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: Receiver of the minted tokens
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority (i.e. signer of this
                                intent). The final string representation of the
                                token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: >-
                            Burn a set of imt tokens, within the intents
                            contract.
                          type: object
                          required:
                            - intent
                            - minter_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_burn
                            memo:
                              type:
                                - string
                                - 'null'
                            minter_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority. The final string
                                representation of the token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                  nonce:
                    examples:
                      - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    type: string
                    description: 'Encoding: base64'
                  signer_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  verifying_contract:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
            standard:
              type: string
              enum:
                - webauthn
            public_key:
              type: string
              pattern: '^p256:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^p256:'
              description: 'Encoding: base58'
          description: >-
            [COSE ES256 (-7)
            algorithm](https://www.iana.org/assignments/cose/cose.xhtml#algorithms):
            NIST P-256 curve (a.k.a secp256r1) over SHA-256
          additionalProperties: false
        - description: >-
            TonConnect: The standard for data signing in TON blockchain
            platform. For more details, refer to [TonConnect
            documentation](https://docs.tonconsole.com/academy/sign-data).
          type: object
          required:
            - address
            - domain
            - payload
            - public_key
            - signature
            - standard
            - timestamp
          properties:
            address:
              description: >-
                Wallet address in either
                [Raw](https://docs.ton.org/v3/documentation/smart-contracts/addresses/address-formats#raw-address)
                representation or
                [user-friendly](https://docs.ton.org/v3/documentation/smart-contracts/addresses/address-formats#user-friendly-address)
                format
              allOf:
                - type: string
            domain:
              description: dApp domain
              type: string
            payload:
              description: >-
                See
                <https://docs.tonconsole.com/academy/sign-data#choosing-the-right-format>
              oneOf:
                - type: object
                  required:
                    - text
                    - type
                  properties:
                    text:
                      type: string
                      x-parseJson:
                        type: object
                        required:
                          - deadline
                          - nonce
                          - signer_id
                          - verifying_contract
                        properties:
                          deadline:
                            type: string
                          intents:
                            description: >-
                              Sequence of intents to execute in given order.
                              Empty list is also a valid sequence, i.e. it
                              doesn't do anything, but still invalidates the
                              `nonce` for the signer WARNING: Promises created
                              by different intents are executed concurrently and
                              does not rely on the order of the intents in this
                              structure
                            type: array
                            items:
                              oneOf:
                                - description: See [`AddPublicKey`]
                                  type: object
                                  required:
                                    - intent
                                    - public_key
                                  properties:
                                    intent:
                                      type: string
                                      enum:
                                        - add_public_key
                                    public_key:
                                      examples:
                                        - >-
                                          ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                        - >-
                                          secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                                      type: string
                                      description: 'Encoding: base58'
                                  additionalProperties: false
                                - description: See [`RemovePublicKey`]
                                  type: object
                                  required:
                                    - intent
                                    - public_key
                                  properties:
                                    intent:
                                      type: string
                                      enum:
                                        - remove_public_key
                                    public_key:
                                      examples:
                                        - >-
                                          ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                        - >-
                                          secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                                      type: string
                                      description: 'Encoding: base58'
                                  additionalProperties: false
                                - description: See [`Transfer`]
                                  type: object
                                  required:
                                    - intent
                                    - receiver_id
                                    - tokens
                                  properties:
                                    intent:
                                      type: string
                                      enum:
                                        - transfer
                                    memo:
                                      type:
                                        - string
                                        - 'null'
                                    min_gas:
                                      description: >-
                                        Minimum gas for `mt_on_transfer()`


                                        Remaining gas will be distributed evenly
                                        across all Function Call Promises
                                        created during execution of current
                                        receipt.
                                      type:
                                        - string
                                        - 'null'
                                    msg:
                                      description: Message to pass to `mt_on_transfer`
                                      type: string
                                    receiver_id:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type: string
                                    state_init:
                                      description: >-
                                        Optionally initialize the receiver's
                                        contract (Deterministic AccountId) via
                                        [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                        right before calling `mt_on_transfer()`
                                        (in the same receipt).
                                      anyOf:
                                        - oneOf:
                                            - type: object
                                              required:
                                                - code
                                                - data
                                                - version
                                              properties:
                                                code:
                                                  oneOf:
                                                    - type: object
                                                      required:
                                                        - hash
                                                      properties:
                                                        hash:
                                                          type: string
                                                      additionalProperties: false
                                                    - type: object
                                                      required:
                                                        - account_id
                                                      properties:
                                                        account_id:
                                                          description: >-
                                                            NEAR Account Identifier.


                                                            This is a unique, syntactically valid,
                                                            human-readable account identifier on the
                                                            NEAR network.


                                                            [See the crate-level docs for
                                                            information about
                                                            validation.](index.html#account-id-rules)


                                                            Also see [Error kind
                                                            precedence](AccountId#error-kind-precedence).


                                                            ## Examples


                                                            ``` use near_account_id::AccountId;


                                                            let alice: AccountId =
                                                            "alice.near".parse().unwrap();


                                                            assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                            // (ƒ is not f) ```
                                                          type: string
                                                      additionalProperties: false
                                                data:
                                                  type: object
                                                  additionalProperties:
                                                    type: string
                                                version:
                                                  type: string
                                                  enum:
                                                    - v1
                                              additionalProperties: false
                                        - type: 'null'
                                    tokens:
                                      type: object
                                      additionalProperties:
                                        type: string
                                  additionalProperties: false
                                - description: See [`FtWithdraw`]
                                  type: object
                                  required:
                                    - amount
                                    - intent
                                    - receiver_id
                                    - token
                                  properties:
                                    amount:
                                      type: string
                                    intent:
                                      type: string
                                      enum:
                                        - ft_withdraw
                                    memo:
                                      type:
                                        - string
                                        - 'null'
                                    min_gas:
                                      description: >-
                                        Optional minimum required Near gas for
                                        created Promise to succeed: *
                                        `ft_transfer`:      minimum: 15TGas,
                                        default: 15TGas * `ft_transfer_call`:
                                        minimum: 30TGas, default: 50TGas


                                        Remaining gas will be distributed evenly
                                        across all Function Call Promises
                                        created during execution of current
                                        receipt.
                                      type:
                                        - string
                                        - 'null'
                                    msg:
                                      description: >-
                                        Message to pass to `ft_transfer_call`.
                                        Otherwise, `ft_transfer` will be used.
                                        NOTE: No refund will be made in case of
                                        insufficient `storage_deposit` on
                                        `token` for `receiver_id`
                                      type:
                                        - string
                                        - 'null'
                                    receiver_id:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type: string
                                    storage_deposit:
                                      description: >-
                                        Optionally make `storage_deposit` for
                                        `receiver_id` on `token`. The amount
                                        will be subtracted from user's NEP-141
                                        `wNEAR` balance. NOTE: the `wNEAR` will
                                        not be refunded in case of fail
                                      type:
                                        - string
                                        - 'null'
                                    token:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type: string
                                  additionalProperties: false
                                - description: See [`NftWithdraw`]
                                  type: object
                                  required:
                                    - intent
                                    - receiver_id
                                    - token
                                    - token_id
                                  properties:
                                    intent:
                                      type: string
                                      enum:
                                        - nft_withdraw
                                    memo:
                                      type:
                                        - string
                                        - 'null'
                                    min_gas:
                                      description: >-
                                        Optional minimum required Near gas for
                                        created Promise to succeed: *
                                        `nft_transfer`:      minimum: 15TGas,
                                        default: 15TGas * `nft_transfer_call`:
                                        minimum: 30TGas, default: 50TGas


                                        Remaining gas will be distributed evenly
                                        across all Function Call Promises
                                        created during execution of current
                                        receipt.
                                      type:
                                        - string
                                        - 'null'
                                    msg:
                                      description: >-
                                        Message to pass to `nft_transfer_call`.
                                        Otherwise, `nft_transfer` will be used.
                                        NOTE: No refund will be made in case of
                                        insufficient `storage_deposit` on
                                        `token` for `receiver_id`
                                      type:
                                        - string
                                        - 'null'
                                    receiver_id:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type: string
                                    storage_deposit:
                                      description: >-
                                        Optionally make `storage_deposit` for
                                        `receiver_id` on `token`. The amount
                                        will be subtracted from user's NEP-141
                                        `wNEAR` balance. NOTE: the `wNEAR` will
                                        not be refunded in case of fail
                                      type:
                                        - string
                                        - 'null'
                                    token:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type: string
                                    token_id:
                                      type: string
                                  additionalProperties: false
                                - description: See [`MtWithdraw`]
                                  type: object
                                  required:
                                    - amounts
                                    - intent
                                    - receiver_id
                                    - token
                                    - token_ids
                                  properties:
                                    amounts:
                                      type: array
                                      items:
                                        type: string
                                    intent:
                                      type: string
                                      enum:
                                        - mt_withdraw
                                    memo:
                                      type:
                                        - string
                                        - 'null'
                                    min_gas:
                                      description: >-
                                        Optional minimum required Near gas for
                                        created Promise to succeed per token: *
                                        `mt_batch_transfer`:      minimum:
                                        20TGas, default: 20TGas *
                                        `mt_batch_transfer_call`: minimum:
                                        35TGas, default: 50TGas


                                        Remaining gas will be distributed evenly
                                        across all Function Call Promises
                                        created during execution of current
                                        receipt.
                                      type:
                                        - string
                                        - 'null'
                                    msg:
                                      description: >-
                                        Message to pass to
                                        `mt_batch_transfer_call`. Otherwise,
                                        `mt_batch_transfer` will be used. NOTE:
                                        No refund will be made in case of
                                        insufficient `storage_deposit` on
                                        `token` for `receiver_id`
                                      type:
                                        - string
                                        - 'null'
                                    receiver_id:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type: string
                                    storage_deposit:
                                      description: >-
                                        Optionally make `storage_deposit` for
                                        `receiver_id` on `token`. The amount
                                        will be subtracted from user's NEP-141
                                        `wNEAR` balance. NOTE: the `wNEAR` will
                                        not be refunded in case of fail
                                      type:
                                        - string
                                        - 'null'
                                    token:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type: string
                                    token_ids:
                                      type: array
                                      items:
                                        type: string
                                  additionalProperties: false
                                - description: See [`NativeWithdraw`]
                                  type: object
                                  required:
                                    - amount
                                    - intent
                                    - receiver_id
                                  properties:
                                    amount:
                                      type: string
                                    intent:
                                      type: string
                                      enum:
                                        - native_withdraw
                                    receiver_id:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type: string
                                  additionalProperties: false
                                - description: See [`StorageDeposit`]
                                  type: object
                                  required:
                                    - amount
                                    - contract_id
                                    - deposit_for_account_id
                                    - intent
                                  properties:
                                    amount:
                                      type: string
                                    contract_id:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type: string
                                    deposit_for_account_id:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type: string
                                    intent:
                                      type: string
                                      enum:
                                        - storage_deposit
                                  additionalProperties: false
                                - description: See [`TokenDiff`]
                                  type: object
                                  required:
                                    - diff
                                    - intent
                                  properties:
                                    diff:
                                      type: object
                                      additionalProperties:
                                        type: string
                                    intent:
                                      type: string
                                      enum:
                                        - token_diff
                                    memo:
                                      type:
                                        - string
                                        - 'null'
                                    referral:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type:
                                        - string
                                        - 'null'
                                  additionalProperties: false
                                - description: See [`SetAuthByPredecessorId`]
                                  type: object
                                  required:
                                    - enabled
                                    - intent
                                  properties:
                                    enabled:
                                      type: boolean
                                    intent:
                                      type: string
                                      enum:
                                        - set_auth_by_predecessor_id
                                  additionalProperties: false
                                - description: See [`AuthCall`]
                                  type: object
                                  required:
                                    - contract_id
                                    - intent
                                    - msg
                                  properties:
                                    attached_deposit:
                                      description: >-
                                        Optionally, attach deposit to
                                        [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                        call. The amount will be subtracted from
                                        user's NEP-141 `wNEAR` balance.


                                        NOTE: the `wNEAR` will not be refunded
                                        in case of fail.
                                      type: string
                                    contract_id:
                                      description: >-
                                        Callee for
                                        [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                      type: string
                                    intent:
                                      type: string
                                      enum:
                                        - auth_call
                                    min_gas:
                                      description: >-
                                        Optional minimum gas required for
                                        created promise to succeed. By default,
                                        only
                                        [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                        is required.


                                        Remaining gas will be distributed evenly
                                        across all Function Call Promises
                                        created during execution of current
                                        receipt.
                                      type:
                                        - string
                                        - 'null'
                                    msg:
                                      description: >-
                                        `msg` to pass in
                                        [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                      type: string
                                    state_init:
                                      description: >-
                                        Optionally initialize the receiver's
                                        contract (Deterministic AccountId) via
                                        [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                        right before calling
                                        [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                        (in the same receipt).
                                      anyOf:
                                        - oneOf:
                                            - type: object
                                              required:
                                                - code
                                                - data
                                                - version
                                              properties:
                                                code:
                                                  oneOf:
                                                    - type: object
                                                      required:
                                                        - hash
                                                      properties:
                                                        hash:
                                                          type: string
                                                      additionalProperties: false
                                                    - type: object
                                                      required:
                                                        - account_id
                                                      properties:
                                                        account_id:
                                                          description: >-
                                                            NEAR Account Identifier.


                                                            This is a unique, syntactically valid,
                                                            human-readable account identifier on the
                                                            NEAR network.


                                                            [See the crate-level docs for
                                                            information about
                                                            validation.](index.html#account-id-rules)


                                                            Also see [Error kind
                                                            precedence](AccountId#error-kind-precedence).


                                                            ## Examples


                                                            ``` use near_account_id::AccountId;


                                                            let alice: AccountId =
                                                            "alice.near".parse().unwrap();


                                                            assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                            // (ƒ is not f) ```
                                                          type: string
                                                      additionalProperties: false
                                                data:
                                                  type: object
                                                  additionalProperties:
                                                    type: string
                                                version:
                                                  type: string
                                                  enum:
                                                    - v1
                                              additionalProperties: false
                                        - type: 'null'
                                  additionalProperties: false
                                - description: >-
                                    Mint a set of tokens from the signer to a
                                    specified account id, within the intents
                                    contract.
                                  type: object
                                  required:
                                    - intent
                                    - receiver_id
                                    - tokens
                                  properties:
                                    intent:
                                      type: string
                                      enum:
                                        - imt_mint
                                    memo:
                                      type:
                                        - string
                                        - 'null'
                                    min_gas:
                                      description: >-
                                        Minimum gas for `mt_on_transfer()`


                                        Remaining gas will be distributed evenly
                                        across all Function Call Promises
                                        created during execution of current
                                        receipt.
                                      type:
                                        - string
                                        - 'null'
                                    msg:
                                      description: Message to pass to `mt_on_transfer`
                                      type: string
                                    receiver_id:
                                      description: Receiver of the minted tokens
                                      type: string
                                    state_init:
                                      description: >-
                                        Optionally initialize the receiver's
                                        contract (Deterministic AccountId) via
                                        [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                        right before calling `mt_on_transfer()`
                                        (in the same receipt).
                                      anyOf:
                                        - oneOf:
                                            - type: object
                                              required:
                                                - code
                                                - data
                                                - version
                                              properties:
                                                code:
                                                  oneOf:
                                                    - type: object
                                                      required:
                                                        - hash
                                                      properties:
                                                        hash:
                                                          type: string
                                                      additionalProperties: false
                                                    - type: object
                                                      required:
                                                        - account_id
                                                      properties:
                                                        account_id:
                                                          description: >-
                                                            NEAR Account Identifier.


                                                            This is a unique, syntactically valid,
                                                            human-readable account identifier on the
                                                            NEAR network.


                                                            [See the crate-level docs for
                                                            information about
                                                            validation.](index.html#account-id-rules)


                                                            Also see [Error kind
                                                            precedence](AccountId#error-kind-precedence).


                                                            ## Examples


                                                            ``` use near_account_id::AccountId;


                                                            let alice: AccountId =
                                                            "alice.near".parse().unwrap();


                                                            assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                            // (ƒ is not f) ```
                                                          type: string
                                                      additionalProperties: false
                                                data:
                                                  type: object
                                                  additionalProperties:
                                                    type: string
                                                version:
                                                  type: string
                                                  enum:
                                                    - v1
                                              additionalProperties: false
                                        - type: 'null'
                                    tokens:
                                      description: >-
                                        The token_ids will be wrapped to bind
                                        the token ID to the minter authority
                                        (i.e. signer of this intent). The final
                                        string representation of the token will
                                        be as follows:
                                        `imt:<minter_id>:<token_id>`
                                      type: object
                                      additionalProperties:
                                        type: string
                                  additionalProperties: false
                                - description: >-
                                    Burn a set of imt tokens, within the intents
                                    contract.
                                  type: object
                                  required:
                                    - intent
                                    - minter_id
                                    - tokens
                                  properties:
                                    intent:
                                      type: string
                                      enum:
                                        - imt_burn
                                    memo:
                                      type:
                                        - string
                                        - 'null'
                                    minter_id:
                                      description: >-
                                        NEAR Account Identifier.


                                        This is a unique, syntactically valid,
                                        human-readable account identifier on the
                                        NEAR network.


                                        [See the crate-level docs for
                                        information about
                                        validation.](index.html#account-id-rules)


                                        Also see [Error kind
                                        precedence](AccountId#error-kind-precedence).


                                        ## Examples


                                        ``` use near_account_id::AccountId;


                                        let alice: AccountId =
                                        "alice.near".parse().unwrap();


                                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                        // (ƒ is not f) ```
                                      type: string
                                    tokens:
                                      description: >-
                                        The token_ids will be wrapped to bind
                                        the token ID to the minter authority.
                                        The final string representation of the
                                        token will be as follows:
                                        `imt:<minter_id>:<token_id>`
                                      type: object
                                      additionalProperties:
                                        type: string
                                  additionalProperties: false
                          nonce:
                            examples:
                              - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                            type: string
                            description: 'Encoding: base64'
                          signer_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          verifying_contract:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                    type:
                      type: string
                      enum:
                        - text
            public_key:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            standard:
              type: string
              enum:
                - ton_connect
            timestamp:
              description: UNIX timestamp (in seconds or RFC3339) at the time of singing
              allOf:
                - anyOf:
                    - type: string
                      format: date-time
                    - writeOnly: true
                      allOf:
                        - type: integer
                          format: int64
          additionalProperties: false
        - description: >-
            SEP-53: The standard for signing data off-chain for Stellar
            accounts. See
            [SEP-53](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0053.md)
          type: object
          required:
            - payload
            - public_key
            - signature
            - standard
          properties:
            payload:
              type: string
              x-parseJson:
                type: object
                required:
                  - deadline
                  - nonce
                  - signer_id
                  - verifying_contract
                properties:
                  deadline:
                    type: string
                  intents:
                    description: >-
                      Sequence of intents to execute in given order. Empty list
                      is also a valid sequence, i.e. it doesn't do anything, but
                      still invalidates the `nonce` for the signer WARNING:
                      Promises created by different intents are executed
                      concurrently and does not rely on the order of the intents
                      in this structure
                    type: array
                    items:
                      oneOf:
                        - description: See [`AddPublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - add_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`RemovePublicKey`]
                          type: object
                          required:
                            - intent
                            - public_key
                          properties:
                            intent:
                              type: string
                              enum:
                                - remove_public_key
                            public_key:
                              examples:
                                - >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                - >-
                                  secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3
                              type: string
                              description: 'Encoding: base58'
                          additionalProperties: false
                        - description: See [`Transfer`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - transfer
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: See [`FtWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                            - token
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - ft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `ft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `ft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `ft_transfer_call`.
                                Otherwise, `ft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`NftWithdraw`]
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - token
                            - token_id
                          properties:
                            intent:
                              type: string
                              enum:
                                - nft_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed: * `nft_transfer`:     
                                minimum: 15TGas, default: 15TGas *
                                `nft_transfer_call`: minimum: 30TGas, default:
                                50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `nft_transfer_call`.
                                Otherwise, `nft_transfer` will be used. NOTE: No
                                refund will be made in case of insufficient
                                `storage_deposit` on `token` for `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_id:
                              type: string
                          additionalProperties: false
                        - description: See [`MtWithdraw`]
                          type: object
                          required:
                            - amounts
                            - intent
                            - receiver_id
                            - token
                            - token_ids
                          properties:
                            amounts:
                              type: array
                              items:
                                type: string
                            intent:
                              type: string
                              enum:
                                - mt_withdraw
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Optional minimum required Near gas for created
                                Promise to succeed per token: *
                                `mt_batch_transfer`:      minimum: 20TGas,
                                default: 20TGas * `mt_batch_transfer_call`:
                                minimum: 35TGas, default: 50TGas


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                Message to pass to `mt_batch_transfer_call`.
                                Otherwise, `mt_batch_transfer` will be used.
                                NOTE: No refund will be made in case of
                                insufficient `storage_deposit` on `token` for
                                `receiver_id`
                              type:
                                - string
                                - 'null'
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            storage_deposit:
                              description: >-
                                Optionally make `storage_deposit` for
                                `receiver_id` on `token`. The amount will be
                                subtracted from user's NEP-141 `wNEAR` balance.
                                NOTE: the `wNEAR` will not be refunded in case
                                of fail
                              type:
                                - string
                                - 'null'
                            token:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            token_ids:
                              type: array
                              items:
                                type: string
                          additionalProperties: false
                        - description: See [`NativeWithdraw`]
                          type: object
                          required:
                            - amount
                            - intent
                            - receiver_id
                          properties:
                            amount:
                              type: string
                            intent:
                              type: string
                              enum:
                                - native_withdraw
                            receiver_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                        - description: See [`StorageDeposit`]
                          type: object
                          required:
                            - amount
                            - contract_id
                            - deposit_for_account_id
                            - intent
                          properties:
                            amount:
                              type: string
                            contract_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            deposit_for_account_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            intent:
                              type: string
                              enum:
                                - storage_deposit
                          additionalProperties: false
                        - description: See [`TokenDiff`]
                          type: object
                          required:
                            - diff
                            - intent
                          properties:
                            diff:
                              type: object
                              additionalProperties:
                                type: string
                            intent:
                              type: string
                              enum:
                                - token_diff
                            memo:
                              type:
                                - string
                                - 'null'
                            referral:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type:
                                - string
                                - 'null'
                          additionalProperties: false
                        - description: See [`SetAuthByPredecessorId`]
                          type: object
                          required:
                            - enabled
                            - intent
                          properties:
                            enabled:
                              type: boolean
                            intent:
                              type: string
                              enum:
                                - set_auth_by_predecessor_id
                          additionalProperties: false
                        - description: See [`AuthCall`]
                          type: object
                          required:
                            - contract_id
                            - intent
                            - msg
                          properties:
                            attached_deposit:
                              description: >-
                                Optionally, attach deposit to
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                call. The amount will be subtracted from user's
                                NEP-141 `wNEAR` balance.


                                NOTE: the `wNEAR` will not be refunded in case
                                of fail.
                              type: string
                            contract_id:
                              description: >-
                                Callee for
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            intent:
                              type: string
                              enum:
                                - auth_call
                            min_gas:
                              description: >-
                                Optional minimum gas required for created
                                promise to succeed. By default, only
                                [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                is required.


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: >-
                                `msg` to pass in
                                [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling
                                [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                (in the same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                          additionalProperties: false
                        - description: >-
                            Mint a set of tokens from the signer to a specified
                            account id, within the intents contract.
                          type: object
                          required:
                            - intent
                            - receiver_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_mint
                            memo:
                              type:
                                - string
                                - 'null'
                            min_gas:
                              description: >-
                                Minimum gas for `mt_on_transfer()`


                                Remaining gas will be distributed evenly across
                                all Function Call Promises created during
                                execution of current receipt.
                              type:
                                - string
                                - 'null'
                            msg:
                              description: Message to pass to `mt_on_transfer`
                              type: string
                            receiver_id:
                              description: Receiver of the minted tokens
                              type: string
                            state_init:
                              description: >-
                                Optionally initialize the receiver's contract
                                (Deterministic AccountId) via
                                [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                right before calling `mt_on_transfer()` (in the
                                same receipt).
                              anyOf:
                                - oneOf:
                                    - type: object
                                      required:
                                        - code
                                        - data
                                        - version
                                      properties:
                                        code:
                                          oneOf:
                                            - type: object
                                              required:
                                                - hash
                                              properties:
                                                hash:
                                                  type: string
                                              additionalProperties: false
                                            - type: object
                                              required:
                                                - account_id
                                              properties:
                                                account_id:
                                                  description: >-
                                                    NEAR Account Identifier.


                                                    This is a unique, syntactically valid,
                                                    human-readable account identifier on the
                                                    NEAR network.


                                                    [See the crate-level docs for
                                                    information about
                                                    validation.](index.html#account-id-rules)


                                                    Also see [Error kind
                                                    precedence](AccountId#error-kind-precedence).


                                                    ## Examples


                                                    ``` use near_account_id::AccountId;


                                                    let alice: AccountId =
                                                    "alice.near".parse().unwrap();


                                                    assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                    // (ƒ is not f) ```
                                                  type: string
                                              additionalProperties: false
                                        data:
                                          type: object
                                          additionalProperties:
                                            type: string
                                        version:
                                          type: string
                                          enum:
                                            - v1
                                      additionalProperties: false
                                - type: 'null'
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority (i.e. signer of this
                                intent). The final string representation of the
                                token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                        - description: >-
                            Burn a set of imt tokens, within the intents
                            contract.
                          type: object
                          required:
                            - intent
                            - minter_id
                            - tokens
                          properties:
                            intent:
                              type: string
                              enum:
                                - imt_burn
                            memo:
                              type:
                                - string
                                - 'null'
                            minter_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            tokens:
                              description: >-
                                The token_ids will be wrapped to bind the token
                                ID to the minter authority. The final string
                                representation of the token will be as follows:
                                `imt:<minter_id>:<token_id>`
                              type: object
                              additionalProperties:
                                type: string
                          additionalProperties: false
                  nonce:
                    examples:
                      - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    type: string
                    description: 'Encoding: base64'
                  signer_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  verifying_contract:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
            public_key:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            standard:
              type: string
              enum:
                - sep53
          additionalProperties: false
    NativeWithdraw:
      description: >-
        Withdraw native tokens (NEAR) from the intents contract to a given
        external account id (external being outside of intents). This will
        subtract from the account's wNEAR balance, and will be sent to the
        account specified as native NEAR. NOTE: the `wNEAR` will not be refunded
        in case of fail (e.g. `receiver_id` account does not exist).
      type: object
      required:
        - amount
        - receiver_id
      properties:
        amount:
          type: string
        receiver_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
      additionalProperties: false
    Nep413DefuseMessage_for_DefuseIntents:
      type: object
      required:
        - deadline
        - signer_id
      properties:
        deadline:
          type: string
        intents:
          description: >-
            Sequence of intents to execute in given order. Empty list is also a
            valid sequence, i.e. it doesn't do anything, but still invalidates
            the `nonce` for the signer WARNING: Promises created by different
            intents are executed concurrently and does not rely on the order of
            the intents in this structure
          type: array
          items:
            oneOf:
              - description: See [`AddPublicKey`]
                type: object
                required:
                  - intent
                  - public_key
                properties:
                  intent:
                    type: string
                    enum:
                      - add_public_key
                  public_key:
                    type: string
                    description: 'Encoding: base58'
                    example: ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                additionalProperties: false
              - description: See [`RemovePublicKey`]
                type: object
                required:
                  - intent
                  - public_key
                properties:
                  intent:
                    type: string
                    enum:
                      - remove_public_key
                  public_key:
                    type: string
                    description: 'Encoding: base58'
                    example: ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                additionalProperties: false
              - description: See [`Transfer`]
                type: object
                required:
                  - intent
                  - receiver_id
                  - tokens
                properties:
                  intent:
                    type: string
                    enum:
                      - transfer
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Minimum gas for `mt_on_transfer()`


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: Message to pass to `mt_on_transfer`
                    type: string
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  state_init:
                    description: >-
                      Optionally initialize the receiver's contract
                      (Deterministic AccountId) via
                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                      right before calling `mt_on_transfer()` (in the same
                      receipt).
                    anyOf:
                      - oneOf:
                          - type: object
                            required:
                              - code
                              - data
                              - version
                            properties:
                              code:
                                oneOf:
                                  - type: object
                                    required:
                                      - hash
                                    properties:
                                      hash:
                                        type: string
                                    additionalProperties: false
                                  - type: object
                                    required:
                                      - account_id
                                    properties:
                                      account_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                              data:
                                type: object
                                additionalProperties:
                                  type: string
                              version:
                                type: string
                                enum:
                                  - v1
                            additionalProperties: false
                        nullable: true
                  tokens:
                    type: object
                    additionalProperties:
                      type: string
                additionalProperties: false
              - description: See [`FtWithdraw`]
                type: object
                required:
                  - amount
                  - intent
                  - receiver_id
                  - token
                properties:
                  amount:
                    type: string
                  intent:
                    type: string
                    enum:
                      - ft_withdraw
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Optional minimum required Near gas for created Promise to
                      succeed: * `ft_transfer`:      minimum: 15TGas, default:
                      15TGas * `ft_transfer_call`: minimum: 30TGas, default:
                      50TGas


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      Message to pass to `ft_transfer_call`. Otherwise,
                      `ft_transfer` will be used. NOTE: No refund will be made
                      in case of insufficient `storage_deposit` on `token` for
                      `receiver_id`
                    type: string
                    nullable: true
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  storage_deposit:
                    description: >-
                      Optionally make `storage_deposit` for `receiver_id` on
                      `token`. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in
                      case of fail
                    type: string
                    nullable: true
                  token:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                additionalProperties: false
              - description: See [`NftWithdraw`]
                type: object
                required:
                  - intent
                  - receiver_id
                  - token
                  - token_id
                properties:
                  intent:
                    type: string
                    enum:
                      - nft_withdraw
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Optional minimum required Near gas for created Promise to
                      succeed: * `nft_transfer`:      minimum: 15TGas, default:
                      15TGas * `nft_transfer_call`: minimum: 30TGas, default:
                      50TGas


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      Message to pass to `nft_transfer_call`. Otherwise,
                      `nft_transfer` will be used. NOTE: No refund will be made
                      in case of insufficient `storage_deposit` on `token` for
                      `receiver_id`
                    type: string
                    nullable: true
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  storage_deposit:
                    description: >-
                      Optionally make `storage_deposit` for `receiver_id` on
                      `token`. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in
                      case of fail
                    type: string
                    nullable: true
                  token:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  token_id:
                    type: string
                additionalProperties: false
              - description: See [`MtWithdraw`]
                type: object
                required:
                  - amounts
                  - intent
                  - receiver_id
                  - token
                  - token_ids
                properties:
                  amounts:
                    type: array
                    items:
                      type: string
                  intent:
                    type: string
                    enum:
                      - mt_withdraw
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Optional minimum required Near gas for created Promise to
                      succeed per token: * `mt_batch_transfer`:      minimum:
                      20TGas, default: 20TGas * `mt_batch_transfer_call`:
                      minimum: 35TGas, default: 50TGas


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      Message to pass to `mt_batch_transfer_call`. Otherwise,
                      `mt_batch_transfer` will be used. NOTE: No refund will be
                      made in case of insufficient `storage_deposit` on `token`
                      for `receiver_id`
                    type: string
                    nullable: true
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  storage_deposit:
                    description: >-
                      Optionally make `storage_deposit` for `receiver_id` on
                      `token`. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in
                      case of fail
                    type: string
                    nullable: true
                  token:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  token_ids:
                    type: array
                    items:
                      type: string
                additionalProperties: false
              - description: See [`NativeWithdraw`]
                type: object
                required:
                  - amount
                  - intent
                  - receiver_id
                properties:
                  amount:
                    type: string
                  intent:
                    type: string
                    enum:
                      - native_withdraw
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                additionalProperties: false
              - description: See [`StorageDeposit`]
                type: object
                required:
                  - amount
                  - contract_id
                  - deposit_for_account_id
                  - intent
                properties:
                  amount:
                    type: string
                  contract_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  deposit_for_account_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  intent:
                    type: string
                    enum:
                      - storage_deposit
                additionalProperties: false
              - description: See [`TokenDiff`]
                type: object
                required:
                  - diff
                  - intent
                properties:
                  diff:
                    type: object
                    additionalProperties:
                      type: string
                  intent:
                    type: string
                    enum:
                      - token_diff
                  memo:
                    type: string
                    nullable: true
                  referral:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                    nullable: true
                additionalProperties: false
              - description: See [`SetAuthByPredecessorId`]
                type: object
                required:
                  - enabled
                  - intent
                properties:
                  enabled:
                    type: boolean
                  intent:
                    type: string
                    enum:
                      - set_auth_by_predecessor_id
                additionalProperties: false
              - description: See [`AuthCall`]
                type: object
                required:
                  - contract_id
                  - intent
                  - msg
                properties:
                  attached_deposit:
                    description: >-
                      Optionally, attach deposit to
                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                      call. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance.


                      NOTE: the `wNEAR` will not be refunded in case of fail.
                    type: string
                  contract_id:
                    description: >-
                      Callee for
                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                    type: string
                  intent:
                    type: string
                    enum:
                      - auth_call
                  min_gas:
                    description: >-
                      Optional minimum gas required for created promise to
                      succeed. By default, only
                      [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
                      required.


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      `msg` to pass in
                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                    type: string
                  state_init:
                    description: >-
                      Optionally initialize the receiver's contract
                      (Deterministic AccountId) via
                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                      right before calling
                      [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                      (in the same receipt).
                    anyOf:
                      - oneOf:
                          - type: object
                            required:
                              - code
                              - data
                              - version
                            properties:
                              code:
                                oneOf:
                                  - type: object
                                    required:
                                      - hash
                                    properties:
                                      hash:
                                        type: string
                                    additionalProperties: false
                                  - type: object
                                    required:
                                      - account_id
                                    properties:
                                      account_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                              data:
                                type: object
                                additionalProperties:
                                  type: string
                              version:
                                type: string
                                enum:
                                  - v1
                            additionalProperties: false
                        nullable: true
                additionalProperties: false
              - description: >-
                  Mint a set of tokens from the signer to a specified account
                  id, within the intents contract.
                type: object
                required:
                  - intent
                  - receiver_id
                  - tokens
                properties:
                  intent:
                    type: string
                    enum:
                      - imt_mint
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Minimum gas for `mt_on_transfer()`


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: Message to pass to `mt_on_transfer`
                    type: string
                  receiver_id:
                    description: Receiver of the minted tokens
                    type: string
                  state_init:
                    description: >-
                      Optionally initialize the receiver's contract
                      (Deterministic AccountId) via
                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                      right before calling `mt_on_transfer()` (in the same
                      receipt).
                    anyOf:
                      - oneOf:
                          - type: object
                            required:
                              - code
                              - data
                              - version
                            properties:
                              code:
                                oneOf:
                                  - type: object
                                    required:
                                      - hash
                                    properties:
                                      hash:
                                        type: string
                                    additionalProperties: false
                                  - type: object
                                    required:
                                      - account_id
                                    properties:
                                      account_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                              data:
                                type: object
                                additionalProperties:
                                  type: string
                              version:
                                type: string
                                enum:
                                  - v1
                            additionalProperties: false
                        nullable: true
                  tokens:
                    description: >-
                      The token_ids will be wrapped to bind the token ID to the
                      minter authority (i.e. signer of this intent). The final
                      string representation of the token will be as follows:
                      `imt:<minter_id>:<token_id>`
                    type: object
                    additionalProperties:
                      type: string
                additionalProperties: false
              - description: Burn a set of imt tokens, within the intents contract.
                type: object
                required:
                  - intent
                  - minter_id
                  - tokens
                properties:
                  intent:
                    type: string
                    enum:
                      - imt_burn
                  memo:
                    type: string
                    nullable: true
                  minter_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  tokens:
                    description: >-
                      The token_ids will be wrapped to bind the token ID to the
                      minter authority. The final string representation of the
                      token will be as follows: `imt:<minter_id>:<token_id>`
                    type: object
                    additionalProperties:
                      type: string
                additionalProperties: false
        signer_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
      additionalProperties: false
    Nep413Payload:
      description: See [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md)
      type: object
      required:
        - message
        - nonce
        - recipient
      properties:
        callbackUrl:
          type: string
          nullable: true
        message:
          type: string
        nonce:
          type: string
          description: 'Encoding: base64'
        recipient:
          type: string
      additionalProperties: false
    NftWithdraw:
      description: >-
        Withdraw given NFT tokens from the intents contract to a given external
        account id (external being outside of intents).
      type: object
      required:
        - receiver_id
        - token
        - token_id
      properties:
        memo:
          type: string
          nullable: true
        min_gas:
          description: >-
            Optional minimum required Near gas for created Promise to succeed: *
            `nft_transfer`:      minimum: 15TGas, default: 15TGas *
            `nft_transfer_call`: minimum: 30TGas, default: 50TGas


            Remaining gas will be distributed evenly across all Function Call
            Promises created during execution of current receipt.
          type: string
          nullable: true
        msg:
          description: >-
            Message to pass to `nft_transfer_call`. Otherwise, `nft_transfer`
            will be used. NOTE: No refund will be made in case of insufficient
            `storage_deposit` on `token` for `receiver_id`
          type: string
          nullable: true
        receiver_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        storage_deposit:
          description: >-
            Optionally make `storage_deposit` for `receiver_id` on `token`. The
            amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE:
            the `wNEAR` will not be refunded in case of fail
          type: string
          nullable: true
        token:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        token_id:
          type: string
      additionalProperties: false
    PermissionedAccounts:
      description: >-
        Collects super admin accounts and accounts that have been granted
        permissions defined by `AccessControlRole`.


        # Data structure


        Assume `AccessControlRole` is derived for the following enum, which is
        then passed as `role` attribute to `AccessControllable`.


        ```rust pub enum Role { PauseManager, UnpauseManager, } ```


        Then the returned data has the following structure:


        ```ignore PermissionedAccounts { super_admins: vec!["acc1.near",
        "acc2.near"], roles: HashMap::from([ ("PauseManager",
        PermissionedAccountsPerRole { admins: vec!["acc3.near", "acc4.near"],
        grantees: vec!["acc5.near", "acc6.near"], }), ("UnpauseManager",
        PermissionedAccountsPerRole { admins: vec!["acc7.near", "acc8.near"],
        grantees: vec!["acc9.near", "acc10.near"], }), ]) } ```


        # Uniqueness and ordering


        Account ids returned in vectors are unique but not ordered.
      type: object
      required:
        - roles
        - super_admins
      properties:
        roles:
          description: The admins and grantees of all roles.
          type: object
          additionalProperties:
            description: |-
              Collects all admins and grantees of a role.

              # Uniqueness and ordering

              Account ids returned in vectors are unique but not ordered.
            type: object
            required:
              - admins
              - grantees
            properties:
              admins:
                description: The accounts that have admin permissions for the role.
                type: array
                items:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
              grantees:
                description: The accounts that have been granted the role.
                type: array
                items:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
            additionalProperties: false
        super_admins:
          description: The accounts that have super admin permissions.
          type: array
          items:
            description: >-
              NEAR Account Identifier.


              This is a unique, syntactically valid, human-readable account
              identifier on the NEAR network.


              [See the crate-level docs for information about
              validation.](index.html#account-id-rules)


              Also see [Error kind precedence](AccountId#error-kind-precedence).


              ## Examples


              ``` use near_account_id::AccountId;


              let alice: AccountId = "alice.near".parse().unwrap();


              assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
              not f) ```
            type: string
      additionalProperties: false
    PermissionedAccountsPerRole:
      description: |-
        Collects all admins and grantees of a role.

        # Uniqueness and ordering

        Account ids returned in vectors are unique but not ordered.
      type: object
      required:
        - admins
        - grantees
      properties:
        admins:
          description: The accounts that have admin permissions for the role.
          type: array
          items:
            description: >-
              NEAR Account Identifier.


              This is a unique, syntactically valid, human-readable account
              identifier on the NEAR network.


              [See the crate-level docs for information about
              validation.](index.html#account-id-rules)


              Also see [Error kind precedence](AccountId#error-kind-precedence).


              ## Examples


              ``` use near_account_id::AccountId;


              let alice: AccountId = "alice.near".parse().unwrap();


              assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
              not f) ```
            type: string
        grantees:
          description: The accounts that have been granted the role.
          type: array
          items:
            description: >-
              NEAR Account Identifier.


              This is a unique, syntactically valid, human-readable account
              identifier on the NEAR network.


              [See the crate-level docs for information about
              validation.](index.html#account-id-rules)


              Also see [Error kind precedence](AccountId#error-kind-precedence).


              ## Examples


              ``` use near_account_id::AccountId;


              let alice: AccountId = "alice.near".parse().unwrap();


              assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
              not f) ```
            type: string
      additionalProperties: false
    PickFirst(DateTimeint64):
      anyOf:
        - type: string
          format: date-time
        - writeOnly: true
          allOf:
            - type: integer
              format: int64
    Pips:
      description: 1 pip == 1/100th of bip == 0.0001%
      type: integer
      format: uint32
      minimum: 0
    RolesConfig:
      type: object
      properties:
        admins:
          default: {}
          type: object
          additionalProperties:
            type: array
            items:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
            uniqueItems: true
        grantees:
          default: {}
          type: object
          additionalProperties:
            type: array
            items:
              description: >-
                NEAR Account Identifier.


                This is a unique, syntactically valid, human-readable account
                identifier on the NEAR network.


                [See the crate-level docs for information about
                validation.](index.html#account-id-rules)


                Also see [Error kind
                precedence](AccountId#error-kind-precedence).


                ## Examples


                ``` use near_account_id::AccountId;


                let alice: AccountId = "alice.near".parse().unwrap();


                assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
                not f) ```
              type: string
            uniqueItems: true
        super_admins:
          default: []
          type: array
          items:
            description: >-
              NEAR Account Identifier.


              This is a unique, syntactically valid, human-readable account
              identifier on the NEAR network.


              [See the crate-level docs for information about
              validation.](index.html#account-id-rules)


              Also see [Error kind precedence](AccountId#error-kind-precedence).


              ## Examples


              ``` use near_account_id::AccountId;


              let alice: AccountId = "alice.near".parse().unwrap();


              assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is
              not f) ```
            type: string
          uniqueItems: true
      additionalProperties: false
    SimulationOutput:
      type: object
      required:
        - intents_executed
        - logs
        - min_deadline
        - state
      properties:
        intents_executed:
          type: array
          items:
            type: object
            required:
              - account_id
              - intent_hash
              - nonce
            properties:
              account_id:
                description: >-
                  Account identifier. This is the human readable UTF-8 string
                  which is used internally to index accounts on the network and
                  their respective state.


                  This is the "referenced" version of the account ID. It is to
                  [`AccountId`] what [`str`] is to [`String`], and works quite
                  similarly to [`Path`]. Like with [`str`] and [`Path`], you
                  can't have a value of type `AccountIdRef`, but you can have a
                  reference like `&AccountIdRef` or `&mut AccountIdRef`.


                  This type supports zero-copy deserialization offered by
                  [`serde`](https://docs.rs/serde/), but cannot do the same for
                  [`borsh`](https://docs.rs/borsh/) since the latter does not
                  support zero-copy.


                  # Examples ``` use near_account_id::{AccountId, AccountIdRef};
                  use std::convert::{TryFrom, TryInto};


                  // Construction let alice =
                  AccountIdRef::new("alice.near").unwrap();
                  assert!(AccountIdRef::new("invalid.").is_err()); ```


                  [`FromStr`]: std::str::FromStr [`Path`]: std::path::Path
                type: string
              intent_hash:
                type: string
                description: 'Encoding: base58'
              nonce:
                type: string
                description: 'Encoding: base64'
            additionalProperties: false
        invariant_violated:
          description: >-
            Unmatched token deltas needed to keep the invariant. If not empty,
            can be used along with fee to calculate `token_diff` closure.
          anyOf:
            - oneOf:
                - type: object
                  required:
                    - error
                    - unmatched_deltas
                  properties:
                    error:
                      type: string
                      enum:
                        - unmatched_deltas
                    unmatched_deltas:
                      type: object
                      additionalProperties:
                        type: string
                  additionalProperties: false
                - type: object
                  required:
                    - error
                  properties:
                    error:
                      type: string
                      enum:
                        - overflow
                  additionalProperties: false
              nullable: true
        logs:
          type: array
          items:
            type: string
        min_deadline:
          type: string
        state:
          description: Additional info about current state
          allOf:
            - type: object
              required:
                - current_salt
                - fee
              properties:
                current_salt:
                  type: string
                  description: 'Encoding: hex'
                fee:
                  description: 1 pip == 1/100th of bip == 0.0001%
                  type: integer
                  format: uint32
                  minimum: 0
              additionalProperties: false
      additionalProperties: false
    StateInit:
      oneOf:
        - type: object
          required:
            - code
            - data
            - version
          properties:
            code:
              oneOf:
                - type: object
                  required:
                    - hash
                  properties:
                    hash:
                      type: string
                  additionalProperties: false
                - type: object
                  required:
                    - account_id
                  properties:
                    account_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                  additionalProperties: false
            data:
              type: object
              additionalProperties:
                type: string
            version:
              type: string
              enum:
                - v1
          additionalProperties: false
    StateOutput:
      type: object
      required:
        - current_salt
        - fee
      properties:
        current_salt:
          type: string
          description: 'Encoding: hex'
        fee:
          description: 1 pip == 1/100th of bip == 0.0001%
          type: integer
          format: uint32
          minimum: 0
      additionalProperties: false
    StorageDeposit:
      description: >-
        Make [NEP-145](https://nomicon.io/Standards/StorageManagement#nep-145)
        `storage_deposit` for an `account_id` on `contract_id`. The `amount`
        will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the
        `wNEAR` will not be refunded in any case.


        WARNING: use this intent only if paying storage_deposit is not a
        prerequisite for other intents to succeed. If some intent (e.g.
        ft_withdraw) requires storage_deposit, then use storage_deposit field of
        corresponding intent instead of adding a separate `StorageDeposit`
        intent. This is due to the fact that intents that fire `Promise`s are
        not guaranteed to be executed sequentially, in the order of the provided
        intents in `DefuseIntents`.
      type: object
      required:
        - amount
        - contract_id
        - deposit_for_account_id
      properties:
        amount:
          type: string
        contract_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        deposit_for_account_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
      additionalProperties: false
    String:
      type: string
    Tip191Payload:
      description: >-
        See
        [TIP-191](https://github.com/tronprotocol/tips/blob/master/tip-191.md)
      type: string
    Token:
      type: object
      required:
        - token_id
      properties:
        owner_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
          nullable: true
        token_id:
          type: string
      additionalProperties: false
    TonConnectPayloadSchema:
      description: >-
        See
        <https://docs.tonconsole.com/academy/sign-data#choosing-the-right-format>
      oneOf:
        - type: object
          required:
            - text
            - type
          properties:
            text:
              type: string
            type:
              type: string
              enum:
                - text
    IntentAddPublicKey:
      description: See [`AddPublicKey`]
      type: object
      required:
        - intent
        - public_key
      properties:
        intent:
          type: string
          enum:
            - add_public_key
        public_key:
          type: string
          description: 'Encoding: base58'
          example: ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
      additionalProperties: false
    IntentRemovePublicKey:
      description: See [`RemovePublicKey`]
      type: object
      required:
        - intent
        - public_key
      properties:
        intent:
          type: string
          enum:
            - remove_public_key
        public_key:
          type: string
          description: 'Encoding: base58'
          example: ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
      additionalProperties: false
    IntentTransfer:
      description: See [`Transfer`]
      type: object
      required:
        - intent
        - receiver_id
        - tokens
      properties:
        intent:
          type: string
          enum:
            - transfer
        memo:
          type: string
          nullable: true
        min_gas:
          description: >-
            Minimum gas for `mt_on_transfer()`


            Remaining gas will be distributed evenly across all Function Call
            Promises created during execution of current receipt.
          type: string
          nullable: true
        msg:
          description: Message to pass to `mt_on_transfer`
          type: string
        receiver_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        state_init:
          description: >-
            Optionally initialize the receiver's contract (Deterministic
            AccountId) via
            [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
            right before calling `mt_on_transfer()` (in the same receipt).
          anyOf:
            - oneOf:
                - type: object
                  required:
                    - code
                    - data
                    - version
                  properties:
                    code:
                      oneOf:
                        - type: object
                          required:
                            - hash
                          properties:
                            hash:
                              type: string
                          additionalProperties: false
                        - type: object
                          required:
                            - account_id
                          properties:
                            account_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                    data:
                      type: object
                      additionalProperties:
                        type: string
                    version:
                      type: string
                      enum:
                        - v1
                  additionalProperties: false
              nullable: true
        tokens:
          type: object
          additionalProperties:
            type: string
      additionalProperties: false
    IntentFtWithdraw:
      description: See [`FtWithdraw`]
      type: object
      required:
        - amount
        - intent
        - receiver_id
        - token
      properties:
        amount:
          type: string
        intent:
          type: string
          enum:
            - ft_withdraw
        memo:
          type: string
          nullable: true
        min_gas:
          description: >-
            Optional minimum required Near gas for created Promise to succeed: *
            `ft_transfer`:      minimum: 15TGas, default: 15TGas *
            `ft_transfer_call`: minimum: 30TGas, default: 50TGas


            Remaining gas will be distributed evenly across all Function Call
            Promises created during execution of current receipt.
          type: string
          nullable: true
        msg:
          description: >-
            Message to pass to `ft_transfer_call`. Otherwise, `ft_transfer` will
            be used. NOTE: No refund will be made in case of insufficient
            `storage_deposit` on `token` for `receiver_id`
          type: string
          nullable: true
        receiver_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        storage_deposit:
          description: >-
            Optionally make `storage_deposit` for `receiver_id` on `token`. The
            amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE:
            the `wNEAR` will not be refunded in case of fail
          type: string
          nullable: true
        token:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
      additionalProperties: false
    IntentNftWithdraw:
      description: See [`NftWithdraw`]
      type: object
      required:
        - intent
        - receiver_id
        - token
        - token_id
      properties:
        intent:
          type: string
          enum:
            - nft_withdraw
        memo:
          type: string
          nullable: true
        min_gas:
          description: >-
            Optional minimum required Near gas for created Promise to succeed: *
            `nft_transfer`:      minimum: 15TGas, default: 15TGas *
            `nft_transfer_call`: minimum: 30TGas, default: 50TGas


            Remaining gas will be distributed evenly across all Function Call
            Promises created during execution of current receipt.
          type: string
          nullable: true
        msg:
          description: >-
            Message to pass to `nft_transfer_call`. Otherwise, `nft_transfer`
            will be used. NOTE: No refund will be made in case of insufficient
            `storage_deposit` on `token` for `receiver_id`
          type: string
          nullable: true
        receiver_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        storage_deposit:
          description: >-
            Optionally make `storage_deposit` for `receiver_id` on `token`. The
            amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE:
            the `wNEAR` will not be refunded in case of fail
          type: string
          nullable: true
        token:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        token_id:
          type: string
      additionalProperties: false
    IntentMtWithdraw:
      description: See [`MtWithdraw`]
      type: object
      required:
        - amounts
        - intent
        - receiver_id
        - token
        - token_ids
      properties:
        amounts:
          type: array
          items:
            type: string
        intent:
          type: string
          enum:
            - mt_withdraw
        memo:
          type: string
          nullable: true
        min_gas:
          description: >-
            Optional minimum required Near gas for created Promise to succeed
            per token: * `mt_batch_transfer`:      minimum: 20TGas, default:
            20TGas * `mt_batch_transfer_call`: minimum: 35TGas, default: 50TGas


            Remaining gas will be distributed evenly across all Function Call
            Promises created during execution of current receipt.
          type: string
          nullable: true
        msg:
          description: >-
            Message to pass to `mt_batch_transfer_call`. Otherwise,
            `mt_batch_transfer` will be used. NOTE: No refund will be made in
            case of insufficient `storage_deposit` on `token` for `receiver_id`
          type: string
          nullable: true
        receiver_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        storage_deposit:
          description: >-
            Optionally make `storage_deposit` for `receiver_id` on `token`. The
            amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE:
            the `wNEAR` will not be refunded in case of fail
          type: string
          nullable: true
        token:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        token_ids:
          type: array
          items:
            type: string
      additionalProperties: false
    IntentNativeWithdraw:
      description: See [`NativeWithdraw`]
      type: object
      required:
        - amount
        - intent
        - receiver_id
      properties:
        amount:
          type: string
        intent:
          type: string
          enum:
            - native_withdraw
        receiver_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
      additionalProperties: false
    IntentStorageDeposit:
      description: See [`StorageDeposit`]
      type: object
      required:
        - amount
        - contract_id
        - deposit_for_account_id
        - intent
      properties:
        amount:
          type: string
        contract_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        deposit_for_account_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        intent:
          type: string
          enum:
            - storage_deposit
      additionalProperties: false
    IntentTokenDiff:
      description: See [`TokenDiff`]
      type: object
      required:
        - diff
        - intent
      properties:
        diff:
          type: object
          additionalProperties:
            type: string
        intent:
          type: string
          enum:
            - token_diff
        memo:
          type: string
          nullable: true
        referral:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
          nullable: true
      additionalProperties: false
    IntentSetAuthByPredecessorId:
      description: See [`SetAuthByPredecessorId`]
      type: object
      required:
        - enabled
        - intent
      properties:
        enabled:
          type: boolean
        intent:
          type: string
          enum:
            - set_auth_by_predecessor_id
      additionalProperties: false
    IntentAuthCall:
      description: See [`AuthCall`]
      type: object
      required:
        - contract_id
        - intent
        - msg
      properties:
        attached_deposit:
          description: >-
            Optionally, attach deposit to
            [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) call. The
            amount will be subtracted from user's NEP-141 `wNEAR` balance.


            NOTE: the `wNEAR` will not be refunded in case of fail.
          type: string
        contract_id:
          description: Callee for [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
          type: string
        intent:
          type: string
          enum:
            - auth_call
        min_gas:
          description: >-
            Optional minimum gas required for created promise to succeed. By
            default, only [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
            required.


            Remaining gas will be distributed evenly across all Function Call
            Promises created during execution of current receipt.
          type: string
          nullable: true
        msg:
          description: >-
            `msg` to pass in
            [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
          type: string
        state_init:
          description: >-
            Optionally initialize the receiver's contract (Deterministic
            AccountId) via
            [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
            right before calling
            [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth) (in the same
            receipt).
          anyOf:
            - oneOf:
                - type: object
                  required:
                    - code
                    - data
                    - version
                  properties:
                    code:
                      oneOf:
                        - type: object
                          required:
                            - hash
                          properties:
                            hash:
                              type: string
                          additionalProperties: false
                        - type: object
                          required:
                            - account_id
                          properties:
                            account_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                    data:
                      type: object
                      additionalProperties:
                        type: string
                    version:
                      type: string
                      enum:
                        - v1
                  additionalProperties: false
              nullable: true
      additionalProperties: false
    IntentImtMint:
      description: >-
        Mint a set of tokens from the signer to a specified account id, within
        the intents contract.
      type: object
      required:
        - intent
        - receiver_id
        - tokens
      properties:
        intent:
          type: string
          enum:
            - imt_mint
        memo:
          type: string
          nullable: true
        min_gas:
          description: >-
            Minimum gas for `mt_on_transfer()`


            Remaining gas will be distributed evenly across all Function Call
            Promises created during execution of current receipt.
          type: string
          nullable: true
        msg:
          description: Message to pass to `mt_on_transfer`
          type: string
        receiver_id:
          description: Receiver of the minted tokens
          type: string
        state_init:
          description: >-
            Optionally initialize the receiver's contract (Deterministic
            AccountId) via
            [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
            right before calling `mt_on_transfer()` (in the same receipt).
          anyOf:
            - oneOf:
                - type: object
                  required:
                    - code
                    - data
                    - version
                  properties:
                    code:
                      oneOf:
                        - type: object
                          required:
                            - hash
                          properties:
                            hash:
                              type: string
                          additionalProperties: false
                        - type: object
                          required:
                            - account_id
                          properties:
                            account_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                          additionalProperties: false
                    data:
                      type: object
                      additionalProperties:
                        type: string
                    version:
                      type: string
                      enum:
                        - v1
                  additionalProperties: false
              nullable: true
        tokens:
          description: >-
            The token_ids will be wrapped to bind the token ID to the minter
            authority (i.e. signer of this intent). The final string
            representation of the token will be as follows:
            `imt:<minter_id>:<token_id>`
          type: object
          additionalProperties:
            type: string
      additionalProperties: false
    IntentImtBurn:
      description: Burn a set of imt tokens, within the intents contract.
      type: object
      required:
        - intent
        - minter_id
        - tokens
      properties:
        intent:
          type: string
          enum:
            - imt_burn
        memo:
          type: string
          nullable: true
        minter_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        tokens:
          description: >-
            The token_ids will be wrapped to bind the token ID to the minter
            authority. The final string representation of the token will be as
            follows: `imt:<minter_id>:<token_id>`
          type: object
          additionalProperties:
            type: string
      additionalProperties: false
    InvariantViolatedUnmatchedDeltas:
      type: object
      required:
        - error
        - unmatched_deltas
      properties:
        error:
          type: string
          enum:
            - unmatched_deltas
        unmatched_deltas:
          type: object
          additionalProperties:
            type: string
      additionalProperties: false
    InvariantViolatedOverflow:
      type: object
      required:
        - error
      properties:
        error:
          type: string
          enum:
            - overflow
      additionalProperties: false
    MultiPayloadNep413:
      description: >-
        NEP-413: The standard for message signing in Near Protocol. For more
        details, refer to
        [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md).
      type: object
      required:
        - payload
        - public_key
        - signature
        - standard
      properties:
        payload:
          description: >-
            See
            [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md)
          type: object
          required:
            - message
            - nonce
            - recipient
          properties:
            callbackUrl:
              type: string
              nullable: true
            message:
              type: string
            nonce:
              type: string
              description: 'Encoding: base64'
            recipient:
              type: string
          additionalProperties: false
        public_key:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        standard:
          type: string
          enum:
            - nep413
      additionalProperties: false
    MultiPayloadErc191:
      description: >-
        ERC-191: The standard for message signing in Ethereum, commonly used
        with `personal_sign()`. For more details, refer to
        [EIP-191](https://eips.ethereum.org/EIPS/eip-191).
      type: object
      required:
        - payload
        - signature
        - standard
      properties:
        payload:
          description: >-
            See
            [ERC-191](https://github.com/ethereum/ercs/blob/master/ERCS/erc-191.md)
          type: string
        signature:
          description: >-
            There is no public key member because the public key can be
            recovered via `ecrecover()` knowing the data and the signature.
            Encoding: base58
          type: string
          pattern: '^secp256k1:'
        standard:
          type: string
          enum:
            - erc191
      additionalProperties: false
    MultiPayloadTip191:
      description: >-
        TIP-191: The standard for message signing in Tron. For more details,
        refer to
        [TIP-191](https://github.com/tronprotocol/tips/blob/master/tip-191.md).
      type: object
      required:
        - payload
        - signature
        - standard
      properties:
        payload:
          description: >-
            See
            [TIP-191](https://github.com/tronprotocol/tips/blob/master/tip-191.md)
          type: string
        signature:
          description: >-
            There is no public key member because the public key can be
            recovered via `ecrecover()` knowing the data and the signature.
            Encoding: base58
          type: string
          pattern: '^secp256k1:'
        standard:
          type: string
          enum:
            - tip191
      additionalProperties: false
    MultiPayloadRawEd25519:
      description: >-
        Raw Ed25519: The standard used by Solana Phantom wallets for message
        signing. For more details, refer to [Phantom Wallet's
        documentation](https://docs.phantom.com/solana/signing-a-message).
      type: object
      required:
        - payload
        - public_key
        - signature
        - standard
      properties:
        payload:
          type: string
        public_key:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        standard:
          type: string
          enum:
            - raw_ed25519
      additionalProperties: false
    MultiPayloadWebauthnEd25519:
      type: object
      required:
        - authenticator_data
        - client_data_json
        - payload
        - standard
        - public_key
        - signature
      properties:
        authenticator_data:
          description: >-
            Base64Url-encoded
            [authenticatorData](https://w3c.github.io/webauthn/#authenticator-data).
            Encoding: base64
          type: string
        client_data_json:
          description: >-
            Serialized
            [clientDataJSON](https://w3c.github.io/webauthn/#dom-authenticatorresponse-clientdatajson)
          type: string
        payload:
          type: string
        standard:
          type: string
          enum:
            - webauthn
        public_key:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
      description: >-
        [COSE EdDSA (-8)
        algorithm](https://www.iana.org/assignments/cose/cose.xhtml#algorithms):
        ed25519 curve
      additionalProperties: false
    MultiPayloadWebauthnP256:
      type: object
      required:
        - authenticator_data
        - client_data_json
        - payload
        - standard
        - public_key
        - signature
      properties:
        authenticator_data:
          description: >-
            Base64Url-encoded
            [authenticatorData](https://w3c.github.io/webauthn/#authenticator-data).
            Encoding: base64
          type: string
        client_data_json:
          description: >-
            Serialized
            [clientDataJSON](https://w3c.github.io/webauthn/#dom-authenticatorresponse-clientdatajson)
          type: string
        payload:
          type: string
        standard:
          type: string
          enum:
            - webauthn
        public_key:
          type: string
          pattern: '^p256:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^p256:'
          description: 'Encoding: base58'
      description: >-
        [COSE ES256 (-7)
        algorithm](https://www.iana.org/assignments/cose/cose.xhtml#algorithms):
        NIST P-256 curve (a.k.a secp256r1) over SHA-256
      additionalProperties: false
    MultiPayloadTonConnect:
      description: >-
        TonConnect: The standard for data signing in TON blockchain platform.
        For more details, refer to [TonConnect
        documentation](https://docs.tonconsole.com/academy/sign-data).
      type: object
      required:
        - address
        - domain
        - payload
        - public_key
        - signature
        - standard
        - timestamp
      properties:
        address:
          description: >-
            Wallet address in either
            [Raw](https://docs.ton.org/v3/documentation/smart-contracts/addresses/address-formats#raw-address)
            representation or
            [user-friendly](https://docs.ton.org/v3/documentation/smart-contracts/addresses/address-formats#user-friendly-address)
            format
          allOf:
            - type: string
        domain:
          description: dApp domain
          type: string
        payload:
          description: >-
            See
            <https://docs.tonconsole.com/academy/sign-data#choosing-the-right-format>
          oneOf:
            - type: object
              required:
                - text
                - type
              properties:
                text:
                  type: string
                type:
                  type: string
                  enum:
                    - text
        public_key:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        standard:
          type: string
          enum:
            - ton_connect
        timestamp:
          description: UNIX timestamp (in seconds or RFC3339) at the time of singing
          allOf:
            - anyOf:
                - type: string
                  format: date-time
                - writeOnly: true
                  allOf:
                    - type: integer
                      format: int64
      additionalProperties: false
    MultiPayloadSep53:
      description: >-
        SEP-53: The standard for signing data off-chain for Stellar accounts.
        See
        [SEP-53](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0053.md)
      type: object
      required:
        - payload
        - public_key
        - signature
        - standard
      properties:
        payload:
          type: string
        public_key:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        standard:
          type: string
          enum:
            - sep53
      additionalProperties: false
    StateInitV1:
      type: object
      required:
        - code
        - data
        - version
      properties:
        code:
          oneOf:
            - type: object
              required:
                - hash
              properties:
                hash:
                  type: string
              additionalProperties: false
            - type: object
              required:
                - account_id
              properties:
                account_id:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
              additionalProperties: false
        data:
          type: object
          additionalProperties:
            type: string
        version:
          type: string
          enum:
            - v1
      additionalProperties: false
    TonConnectPayloadSchemaText:
      type: object
      required:
        - text
        - type
      properties:
        text:
          type: string
        type:
          type: string
          enum:
            - text
    Nep413DefusePayload:
      type: object
      required:
        - deadline
        - signer_id
      properties:
        deadline:
          type: string
        signer_id:
          description: >-
            NEAR Account Identifier.


            This is a unique, syntactically valid, human-readable account
            identifier on the NEAR network.


            [See the crate-level docs for information about
            validation.](index.html#account-id-rules)


            Also see [Error kind precedence](AccountId#error-kind-precedence).


            ## Examples


            ``` use near_account_id::AccountId;


            let alice: AccountId = "alice.near".parse().unwrap();


            assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not
            f) ```
          type: string
        intents:
          description: >-
            Sequence of intents to execute in given order. Empty list is also a
            valid sequence, i.e. it doesn't do anything, but still invalidates
            the `nonce` for the signer WARNING: Promises created by different
            intents are executed concurrently and does not rely on the order of
            the intents in this structure
          type: array
          items:
            oneOf:
              - description: See [`AddPublicKey`]
                type: object
                required:
                  - intent
                  - public_key
                properties:
                  intent:
                    type: string
                    enum:
                      - add_public_key
                  public_key:
                    type: string
                    description: 'Encoding: base58'
                    example: ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                additionalProperties: false
              - description: See [`RemovePublicKey`]
                type: object
                required:
                  - intent
                  - public_key
                properties:
                  intent:
                    type: string
                    enum:
                      - remove_public_key
                  public_key:
                    type: string
                    description: 'Encoding: base58'
                    example: ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                additionalProperties: false
              - description: See [`Transfer`]
                type: object
                required:
                  - intent
                  - receiver_id
                  - tokens
                properties:
                  intent:
                    type: string
                    enum:
                      - transfer
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Minimum gas for `mt_on_transfer()`


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: Message to pass to `mt_on_transfer`
                    type: string
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  state_init:
                    description: >-
                      Optionally initialize the receiver's contract
                      (Deterministic AccountId) via
                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                      right before calling `mt_on_transfer()` (in the same
                      receipt).
                    anyOf:
                      - oneOf:
                          - type: object
                            required:
                              - code
                              - data
                              - version
                            properties:
                              code:
                                oneOf:
                                  - type: object
                                    required:
                                      - hash
                                    properties:
                                      hash:
                                        type: string
                                    additionalProperties: false
                                  - type: object
                                    required:
                                      - account_id
                                    properties:
                                      account_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                              data:
                                type: object
                                additionalProperties:
                                  type: string
                              version:
                                type: string
                                enum:
                                  - v1
                            additionalProperties: false
                        nullable: true
                  tokens:
                    type: object
                    additionalProperties:
                      type: string
                additionalProperties: false
              - description: See [`FtWithdraw`]
                type: object
                required:
                  - amount
                  - intent
                  - receiver_id
                  - token
                properties:
                  amount:
                    type: string
                  intent:
                    type: string
                    enum:
                      - ft_withdraw
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Optional minimum required Near gas for created Promise to
                      succeed: * `ft_transfer`:      minimum: 15TGas, default:
                      15TGas * `ft_transfer_call`: minimum: 30TGas, default:
                      50TGas


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      Message to pass to `ft_transfer_call`. Otherwise,
                      `ft_transfer` will be used. NOTE: No refund will be made
                      in case of insufficient `storage_deposit` on `token` for
                      `receiver_id`
                    type: string
                    nullable: true
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  storage_deposit:
                    description: >-
                      Optionally make `storage_deposit` for `receiver_id` on
                      `token`. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in
                      case of fail
                    type: string
                    nullable: true
                  token:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                additionalProperties: false
              - description: See [`NftWithdraw`]
                type: object
                required:
                  - intent
                  - receiver_id
                  - token
                  - token_id
                properties:
                  intent:
                    type: string
                    enum:
                      - nft_withdraw
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Optional minimum required Near gas for created Promise to
                      succeed: * `nft_transfer`:      minimum: 15TGas, default:
                      15TGas * `nft_transfer_call`: minimum: 30TGas, default:
                      50TGas


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      Message to pass to `nft_transfer_call`. Otherwise,
                      `nft_transfer` will be used. NOTE: No refund will be made
                      in case of insufficient `storage_deposit` on `token` for
                      `receiver_id`
                    type: string
                    nullable: true
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  storage_deposit:
                    description: >-
                      Optionally make `storage_deposit` for `receiver_id` on
                      `token`. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in
                      case of fail
                    type: string
                    nullable: true
                  token:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  token_id:
                    type: string
                additionalProperties: false
              - description: See [`MtWithdraw`]
                type: object
                required:
                  - amounts
                  - intent
                  - receiver_id
                  - token
                  - token_ids
                properties:
                  amounts:
                    type: array
                    items:
                      type: string
                  intent:
                    type: string
                    enum:
                      - mt_withdraw
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Optional minimum required Near gas for created Promise to
                      succeed per token: * `mt_batch_transfer`:      minimum:
                      20TGas, default: 20TGas * `mt_batch_transfer_call`:
                      minimum: 35TGas, default: 50TGas


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      Message to pass to `mt_batch_transfer_call`. Otherwise,
                      `mt_batch_transfer` will be used. NOTE: No refund will be
                      made in case of insufficient `storage_deposit` on `token`
                      for `receiver_id`
                    type: string
                    nullable: true
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  storage_deposit:
                    description: >-
                      Optionally make `storage_deposit` for `receiver_id` on
                      `token`. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in
                      case of fail
                    type: string
                    nullable: true
                  token:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  token_ids:
                    type: array
                    items:
                      type: string
                additionalProperties: false
              - description: See [`NativeWithdraw`]
                type: object
                required:
                  - amount
                  - intent
                  - receiver_id
                properties:
                  amount:
                    type: string
                  intent:
                    type: string
                    enum:
                      - native_withdraw
                  receiver_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                additionalProperties: false
              - description: See [`StorageDeposit`]
                type: object
                required:
                  - amount
                  - contract_id
                  - deposit_for_account_id
                  - intent
                properties:
                  amount:
                    type: string
                  contract_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  deposit_for_account_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  intent:
                    type: string
                    enum:
                      - storage_deposit
                additionalProperties: false
              - description: See [`TokenDiff`]
                type: object
                required:
                  - diff
                  - intent
                properties:
                  diff:
                    type: object
                    additionalProperties:
                      type: string
                  intent:
                    type: string
                    enum:
                      - token_diff
                  memo:
                    type: string
                    nullable: true
                  referral:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                    nullable: true
                additionalProperties: false
              - description: See [`SetAuthByPredecessorId`]
                type: object
                required:
                  - enabled
                  - intent
                properties:
                  enabled:
                    type: boolean
                  intent:
                    type: string
                    enum:
                      - set_auth_by_predecessor_id
                additionalProperties: false
              - description: See [`AuthCall`]
                type: object
                required:
                  - contract_id
                  - intent
                  - msg
                properties:
                  attached_deposit:
                    description: >-
                      Optionally, attach deposit to
                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                      call. The amount will be subtracted from user's NEP-141
                      `wNEAR` balance.


                      NOTE: the `wNEAR` will not be refunded in case of fail.
                    type: string
                  contract_id:
                    description: >-
                      Callee for
                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                    type: string
                  intent:
                    type: string
                    enum:
                      - auth_call
                  min_gas:
                    description: >-
                      Optional minimum gas required for created promise to
                      succeed. By default, only
                      [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
                      required.


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: >-
                      `msg` to pass in
                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                    type: string
                  state_init:
                    description: >-
                      Optionally initialize the receiver's contract
                      (Deterministic AccountId) via
                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                      right before calling
                      [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                      (in the same receipt).
                    anyOf:
                      - oneOf:
                          - type: object
                            required:
                              - code
                              - data
                              - version
                            properties:
                              code:
                                oneOf:
                                  - type: object
                                    required:
                                      - hash
                                    properties:
                                      hash:
                                        type: string
                                    additionalProperties: false
                                  - type: object
                                    required:
                                      - account_id
                                    properties:
                                      account_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                              data:
                                type: object
                                additionalProperties:
                                  type: string
                              version:
                                type: string
                                enum:
                                  - v1
                            additionalProperties: false
                        nullable: true
                additionalProperties: false
              - description: >-
                  Mint a set of tokens from the signer to a specified account
                  id, within the intents contract.
                type: object
                required:
                  - intent
                  - receiver_id
                  - tokens
                properties:
                  intent:
                    type: string
                    enum:
                      - imt_mint
                  memo:
                    type: string
                    nullable: true
                  min_gas:
                    description: >-
                      Minimum gas for `mt_on_transfer()`


                      Remaining gas will be distributed evenly across all
                      Function Call Promises created during execution of current
                      receipt.
                    type: string
                    nullable: true
                  msg:
                    description: Message to pass to `mt_on_transfer`
                    type: string
                  receiver_id:
                    description: Receiver of the minted tokens
                    type: string
                  state_init:
                    description: >-
                      Optionally initialize the receiver's contract
                      (Deterministic AccountId) via
                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                      right before calling `mt_on_transfer()` (in the same
                      receipt).
                    anyOf:
                      - oneOf:
                          - type: object
                            required:
                              - code
                              - data
                              - version
                            properties:
                              code:
                                oneOf:
                                  - type: object
                                    required:
                                      - hash
                                    properties:
                                      hash:
                                        type: string
                                    additionalProperties: false
                                  - type: object
                                    required:
                                      - account_id
                                    properties:
                                      account_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                              data:
                                type: object
                                additionalProperties:
                                  type: string
                              version:
                                type: string
                                enum:
                                  - v1
                            additionalProperties: false
                        nullable: true
                  tokens:
                    description: >-
                      The token_ids will be wrapped to bind the token ID to the
                      minter authority (i.e. signer of this intent). The final
                      string representation of the token will be as follows:
                      `imt:<minter_id>:<token_id>`
                    type: object
                    additionalProperties:
                      type: string
                additionalProperties: false
              - description: Burn a set of imt tokens, within the intents contract.
                type: object
                required:
                  - intent
                  - minter_id
                  - tokens
                properties:
                  intent:
                    type: string
                    enum:
                      - imt_burn
                  memo:
                    type: string
                    nullable: true
                  minter_id:
                    description: >-
                      NEAR Account Identifier.


                      This is a unique, syntactically valid, human-readable
                      account identifier on the NEAR network.


                      [See the crate-level docs for information about
                      validation.](index.html#account-id-rules)


                      Also see [Error kind
                      precedence](AccountId#error-kind-precedence).


                      ## Examples


                      ``` use near_account_id::AccountId;


                      let alice: AccountId = "alice.near".parse().unwrap();


                      assert!("ƒelicia.near".parse::<AccountId>().is_err()); //
                      (ƒ is not f) ```
                    type: string
                  tokens:
                    description: >-
                      The token_ids will be wrapped to bind the token ID to the
                      minter authority. The final string representation of the
                      token will be as follows: `imt:<minter_id>:<token_id>`
                    type: object
                    additionalProperties:
                      type: string
                additionalProperties: false
    Nep413Payload__Parsed:
      description: See [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md)
      type: object
      required:
        - message
        - nonce
        - recipient
      properties:
        callbackUrl:
          type: string
          nullable: true
        message:
          type: object
          required:
            - original
            - parsed
          additionalProperties: false
          properties:
            original:
              type: string
            parsed:
              type: object
              required:
                - deadline
                - signer_id
              properties:
                deadline:
                  type: string
                signer_id:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
                intents:
                  description: >-
                    Sequence of intents to execute in given order. Empty list is
                    also a valid sequence, i.e. it doesn't do anything, but
                    still invalidates the `nonce` for the signer WARNING:
                    Promises created by different intents are executed
                    concurrently and does not rely on the order of the intents
                    in this structure
                  type: array
                  items:
                    oneOf:
                      - description: See [`AddPublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - add_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`RemovePublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - remove_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`Transfer`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - transfer
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: See [`FtWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                          - token
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - ft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `ft_transfer`:      minimum:
                              15TGas, default: 15TGas * `ft_transfer_call`:
                              minimum: 30TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `ft_transfer_call`. Otherwise,
                              `ft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`NftWithdraw`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - token
                          - token_id
                        properties:
                          intent:
                            type: string
                            enum:
                              - nft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `nft_transfer`:     
                              minimum: 15TGas, default: 15TGas *
                              `nft_transfer_call`: minimum: 30TGas, default:
                              50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `nft_transfer_call`. Otherwise,
                              `nft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_id:
                            type: string
                        additionalProperties: false
                      - description: See [`MtWithdraw`]
                        type: object
                        required:
                          - amounts
                          - intent
                          - receiver_id
                          - token
                          - token_ids
                        properties:
                          amounts:
                            type: array
                            items:
                              type: string
                          intent:
                            type: string
                            enum:
                              - mt_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed per token: *
                              `mt_batch_transfer`:      minimum: 20TGas,
                              default: 20TGas * `mt_batch_transfer_call`:
                              minimum: 35TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `mt_batch_transfer_call`.
                              Otherwise, `mt_batch_transfer` will be used. NOTE:
                              No refund will be made in case of insufficient
                              `storage_deposit` on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_ids:
                            type: array
                            items:
                              type: string
                        additionalProperties: false
                      - description: See [`NativeWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - native_withdraw
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`StorageDeposit`]
                        type: object
                        required:
                          - amount
                          - contract_id
                          - deposit_for_account_id
                          - intent
                        properties:
                          amount:
                            type: string
                          contract_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          deposit_for_account_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          intent:
                            type: string
                            enum:
                              - storage_deposit
                        additionalProperties: false
                      - description: See [`TokenDiff`]
                        type: object
                        required:
                          - diff
                          - intent
                        properties:
                          diff:
                            type: object
                            additionalProperties:
                              type: string
                          intent:
                            type: string
                            enum:
                              - token_diff
                          memo:
                            type: string
                            nullable: true
                          referral:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                            nullable: true
                        additionalProperties: false
                      - description: See [`SetAuthByPredecessorId`]
                        type: object
                        required:
                          - enabled
                          - intent
                        properties:
                          enabled:
                            type: boolean
                          intent:
                            type: string
                            enum:
                              - set_auth_by_predecessor_id
                        additionalProperties: false
                      - description: See [`AuthCall`]
                        type: object
                        required:
                          - contract_id
                          - intent
                          - msg
                        properties:
                          attached_deposit:
                            description: >-
                              Optionally, attach deposit to
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              call. The amount will be subtracted from user's
                              NEP-141 `wNEAR` balance.


                              NOTE: the `wNEAR` will not be refunded in case of
                              fail.
                            type: string
                          contract_id:
                            description: >-
                              Callee for
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          intent:
                            type: string
                            enum:
                              - auth_call
                          min_gas:
                            description: >-
                              Optional minimum gas required for created promise
                              to succeed. By default, only
                              [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
                              required.


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              `msg` to pass in
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling
                              [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                              (in the same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                        additionalProperties: false
                      - description: >-
                          Mint a set of tokens from the signer to a specified
                          account id, within the intents contract.
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_mint
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: Receiver of the minted tokens
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority (i.e. signer of this
                              intent). The final string representation of the
                              token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: Burn a set of imt tokens, within the intents contract.
                        type: object
                        required:
                          - intent
                          - minter_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_burn
                          memo:
                            type: string
                            nullable: true
                          minter_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority. The final string
                              representation of the token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
        nonce:
          type: string
          description: 'Encoding: base64'
        recipient:
          type: string
      additionalProperties: false
    MultiPayloadNep413__Parsed:
      description: >-
        NEP-413: The standard for message signing in Near Protocol. For more
        details, refer to
        [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md).
      type: object
      required:
        - payload
        - public_key
        - signature
        - standard
      properties:
        payload:
          description: >-
            See
            [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md)
          type: object
          required:
            - message
            - nonce
            - recipient
          properties:
            callbackUrl:
              type: string
              nullable: true
            message:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - signer_id
                  properties:
                    deadline:
                      type: string
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
            nonce:
              type: string
              description: 'Encoding: base64'
            recipient:
              type: string
          additionalProperties: false
        public_key:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        standard:
          type: string
          enum:
            - nep413
      additionalProperties: false
    MultiPayloadErc191__Parsed:
      description: >-
        ERC-191: The standard for message signing in Ethereum, commonly used
        with `personal_sign()`. For more details, refer to
        [EIP-191](https://eips.ethereum.org/EIPS/eip-191).
      type: object
      required:
        - payload
        - signature
        - standard
      properties:
        payload:
          type: object
          required:
            - original
            - parsed
          additionalProperties: false
          properties:
            original:
              type: string
            parsed:
              type: object
              required:
                - deadline
                - nonce
                - signer_id
                - verifying_contract
              properties:
                deadline:
                  type: string
                intents:
                  description: >-
                    Sequence of intents to execute in given order. Empty list is
                    also a valid sequence, i.e. it doesn't do anything, but
                    still invalidates the `nonce` for the signer WARNING:
                    Promises created by different intents are executed
                    concurrently and does not rely on the order of the intents
                    in this structure
                  type: array
                  items:
                    oneOf:
                      - description: See [`AddPublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - add_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`RemovePublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - remove_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`Transfer`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - transfer
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: See [`FtWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                          - token
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - ft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `ft_transfer`:      minimum:
                              15TGas, default: 15TGas * `ft_transfer_call`:
                              minimum: 30TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `ft_transfer_call`. Otherwise,
                              `ft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`NftWithdraw`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - token
                          - token_id
                        properties:
                          intent:
                            type: string
                            enum:
                              - nft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `nft_transfer`:     
                              minimum: 15TGas, default: 15TGas *
                              `nft_transfer_call`: minimum: 30TGas, default:
                              50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `nft_transfer_call`. Otherwise,
                              `nft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_id:
                            type: string
                        additionalProperties: false
                      - description: See [`MtWithdraw`]
                        type: object
                        required:
                          - amounts
                          - intent
                          - receiver_id
                          - token
                          - token_ids
                        properties:
                          amounts:
                            type: array
                            items:
                              type: string
                          intent:
                            type: string
                            enum:
                              - mt_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed per token: *
                              `mt_batch_transfer`:      minimum: 20TGas,
                              default: 20TGas * `mt_batch_transfer_call`:
                              minimum: 35TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `mt_batch_transfer_call`.
                              Otherwise, `mt_batch_transfer` will be used. NOTE:
                              No refund will be made in case of insufficient
                              `storage_deposit` on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_ids:
                            type: array
                            items:
                              type: string
                        additionalProperties: false
                      - description: See [`NativeWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - native_withdraw
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`StorageDeposit`]
                        type: object
                        required:
                          - amount
                          - contract_id
                          - deposit_for_account_id
                          - intent
                        properties:
                          amount:
                            type: string
                          contract_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          deposit_for_account_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          intent:
                            type: string
                            enum:
                              - storage_deposit
                        additionalProperties: false
                      - description: See [`TokenDiff`]
                        type: object
                        required:
                          - diff
                          - intent
                        properties:
                          diff:
                            type: object
                            additionalProperties:
                              type: string
                          intent:
                            type: string
                            enum:
                              - token_diff
                          memo:
                            type: string
                            nullable: true
                          referral:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                            nullable: true
                        additionalProperties: false
                      - description: See [`SetAuthByPredecessorId`]
                        type: object
                        required:
                          - enabled
                          - intent
                        properties:
                          enabled:
                            type: boolean
                          intent:
                            type: string
                            enum:
                              - set_auth_by_predecessor_id
                        additionalProperties: false
                      - description: See [`AuthCall`]
                        type: object
                        required:
                          - contract_id
                          - intent
                          - msg
                        properties:
                          attached_deposit:
                            description: >-
                              Optionally, attach deposit to
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              call. The amount will be subtracted from user's
                              NEP-141 `wNEAR` balance.


                              NOTE: the `wNEAR` will not be refunded in case of
                              fail.
                            type: string
                          contract_id:
                            description: >-
                              Callee for
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          intent:
                            type: string
                            enum:
                              - auth_call
                          min_gas:
                            description: >-
                              Optional minimum gas required for created promise
                              to succeed. By default, only
                              [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
                              required.


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              `msg` to pass in
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling
                              [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                              (in the same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                        additionalProperties: false
                      - description: >-
                          Mint a set of tokens from the signer to a specified
                          account id, within the intents contract.
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_mint
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: Receiver of the minted tokens
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority (i.e. signer of this
                              intent). The final string representation of the
                              token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: Burn a set of imt tokens, within the intents contract.
                        type: object
                        required:
                          - intent
                          - minter_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_burn
                          memo:
                            type: string
                            nullable: true
                          minter_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority. The final string
                              representation of the token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                nonce:
                  type: string
                  description: 'Encoding: base64'
                  example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                signer_id:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
                verifying_contract:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
        signature:
          description: >-
            There is no public key member because the public key can be
            recovered via `ecrecover()` knowing the data and the signature.
            Encoding: base58
          type: string
          pattern: '^secp256k1:'
        standard:
          type: string
          enum:
            - erc191
      additionalProperties: false
    MultiPayloadTip191__Parsed:
      description: >-
        TIP-191: The standard for message signing in Tron. For more details,
        refer to
        [TIP-191](https://github.com/tronprotocol/tips/blob/master/tip-191.md).
      type: object
      required:
        - payload
        - signature
        - standard
      properties:
        payload:
          type: object
          required:
            - original
            - parsed
          additionalProperties: false
          properties:
            original:
              type: string
            parsed:
              type: object
              required:
                - deadline
                - nonce
                - signer_id
                - verifying_contract
              properties:
                deadline:
                  type: string
                intents:
                  description: >-
                    Sequence of intents to execute in given order. Empty list is
                    also a valid sequence, i.e. it doesn't do anything, but
                    still invalidates the `nonce` for the signer WARNING:
                    Promises created by different intents are executed
                    concurrently and does not rely on the order of the intents
                    in this structure
                  type: array
                  items:
                    oneOf:
                      - description: See [`AddPublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - add_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`RemovePublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - remove_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`Transfer`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - transfer
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: See [`FtWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                          - token
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - ft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `ft_transfer`:      minimum:
                              15TGas, default: 15TGas * `ft_transfer_call`:
                              minimum: 30TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `ft_transfer_call`. Otherwise,
                              `ft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`NftWithdraw`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - token
                          - token_id
                        properties:
                          intent:
                            type: string
                            enum:
                              - nft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `nft_transfer`:     
                              minimum: 15TGas, default: 15TGas *
                              `nft_transfer_call`: minimum: 30TGas, default:
                              50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `nft_transfer_call`. Otherwise,
                              `nft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_id:
                            type: string
                        additionalProperties: false
                      - description: See [`MtWithdraw`]
                        type: object
                        required:
                          - amounts
                          - intent
                          - receiver_id
                          - token
                          - token_ids
                        properties:
                          amounts:
                            type: array
                            items:
                              type: string
                          intent:
                            type: string
                            enum:
                              - mt_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed per token: *
                              `mt_batch_transfer`:      minimum: 20TGas,
                              default: 20TGas * `mt_batch_transfer_call`:
                              minimum: 35TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `mt_batch_transfer_call`.
                              Otherwise, `mt_batch_transfer` will be used. NOTE:
                              No refund will be made in case of insufficient
                              `storage_deposit` on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_ids:
                            type: array
                            items:
                              type: string
                        additionalProperties: false
                      - description: See [`NativeWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - native_withdraw
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`StorageDeposit`]
                        type: object
                        required:
                          - amount
                          - contract_id
                          - deposit_for_account_id
                          - intent
                        properties:
                          amount:
                            type: string
                          contract_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          deposit_for_account_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          intent:
                            type: string
                            enum:
                              - storage_deposit
                        additionalProperties: false
                      - description: See [`TokenDiff`]
                        type: object
                        required:
                          - diff
                          - intent
                        properties:
                          diff:
                            type: object
                            additionalProperties:
                              type: string
                          intent:
                            type: string
                            enum:
                              - token_diff
                          memo:
                            type: string
                            nullable: true
                          referral:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                            nullable: true
                        additionalProperties: false
                      - description: See [`SetAuthByPredecessorId`]
                        type: object
                        required:
                          - enabled
                          - intent
                        properties:
                          enabled:
                            type: boolean
                          intent:
                            type: string
                            enum:
                              - set_auth_by_predecessor_id
                        additionalProperties: false
                      - description: See [`AuthCall`]
                        type: object
                        required:
                          - contract_id
                          - intent
                          - msg
                        properties:
                          attached_deposit:
                            description: >-
                              Optionally, attach deposit to
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              call. The amount will be subtracted from user's
                              NEP-141 `wNEAR` balance.


                              NOTE: the `wNEAR` will not be refunded in case of
                              fail.
                            type: string
                          contract_id:
                            description: >-
                              Callee for
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          intent:
                            type: string
                            enum:
                              - auth_call
                          min_gas:
                            description: >-
                              Optional minimum gas required for created promise
                              to succeed. By default, only
                              [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
                              required.


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              `msg` to pass in
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling
                              [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                              (in the same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                        additionalProperties: false
                      - description: >-
                          Mint a set of tokens from the signer to a specified
                          account id, within the intents contract.
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_mint
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: Receiver of the minted tokens
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority (i.e. signer of this
                              intent). The final string representation of the
                              token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: Burn a set of imt tokens, within the intents contract.
                        type: object
                        required:
                          - intent
                          - minter_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_burn
                          memo:
                            type: string
                            nullable: true
                          minter_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority. The final string
                              representation of the token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                nonce:
                  type: string
                  description: 'Encoding: base64'
                  example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                signer_id:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
                verifying_contract:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
        signature:
          description: >-
            There is no public key member because the public key can be
            recovered via `ecrecover()` knowing the data and the signature.
            Encoding: base58
          type: string
          pattern: '^secp256k1:'
        standard:
          type: string
          enum:
            - tip191
      additionalProperties: false
    MultiPayloadRawEd25519__Parsed:
      description: >-
        Raw Ed25519: The standard used by Solana Phantom wallets for message
        signing. For more details, refer to [Phantom Wallet's
        documentation](https://docs.phantom.com/solana/signing-a-message).
      type: object
      required:
        - payload
        - public_key
        - signature
        - standard
      properties:
        payload:
          type: object
          required:
            - original
            - parsed
          additionalProperties: false
          properties:
            original:
              type: string
            parsed:
              type: object
              required:
                - deadline
                - nonce
                - signer_id
                - verifying_contract
              properties:
                deadline:
                  type: string
                intents:
                  description: >-
                    Sequence of intents to execute in given order. Empty list is
                    also a valid sequence, i.e. it doesn't do anything, but
                    still invalidates the `nonce` for the signer WARNING:
                    Promises created by different intents are executed
                    concurrently and does not rely on the order of the intents
                    in this structure
                  type: array
                  items:
                    oneOf:
                      - description: See [`AddPublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - add_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`RemovePublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - remove_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`Transfer`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - transfer
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: See [`FtWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                          - token
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - ft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `ft_transfer`:      minimum:
                              15TGas, default: 15TGas * `ft_transfer_call`:
                              minimum: 30TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `ft_transfer_call`. Otherwise,
                              `ft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`NftWithdraw`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - token
                          - token_id
                        properties:
                          intent:
                            type: string
                            enum:
                              - nft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `nft_transfer`:     
                              minimum: 15TGas, default: 15TGas *
                              `nft_transfer_call`: minimum: 30TGas, default:
                              50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `nft_transfer_call`. Otherwise,
                              `nft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_id:
                            type: string
                        additionalProperties: false
                      - description: See [`MtWithdraw`]
                        type: object
                        required:
                          - amounts
                          - intent
                          - receiver_id
                          - token
                          - token_ids
                        properties:
                          amounts:
                            type: array
                            items:
                              type: string
                          intent:
                            type: string
                            enum:
                              - mt_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed per token: *
                              `mt_batch_transfer`:      minimum: 20TGas,
                              default: 20TGas * `mt_batch_transfer_call`:
                              minimum: 35TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `mt_batch_transfer_call`.
                              Otherwise, `mt_batch_transfer` will be used. NOTE:
                              No refund will be made in case of insufficient
                              `storage_deposit` on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_ids:
                            type: array
                            items:
                              type: string
                        additionalProperties: false
                      - description: See [`NativeWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - native_withdraw
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`StorageDeposit`]
                        type: object
                        required:
                          - amount
                          - contract_id
                          - deposit_for_account_id
                          - intent
                        properties:
                          amount:
                            type: string
                          contract_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          deposit_for_account_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          intent:
                            type: string
                            enum:
                              - storage_deposit
                        additionalProperties: false
                      - description: See [`TokenDiff`]
                        type: object
                        required:
                          - diff
                          - intent
                        properties:
                          diff:
                            type: object
                            additionalProperties:
                              type: string
                          intent:
                            type: string
                            enum:
                              - token_diff
                          memo:
                            type: string
                            nullable: true
                          referral:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                            nullable: true
                        additionalProperties: false
                      - description: See [`SetAuthByPredecessorId`]
                        type: object
                        required:
                          - enabled
                          - intent
                        properties:
                          enabled:
                            type: boolean
                          intent:
                            type: string
                            enum:
                              - set_auth_by_predecessor_id
                        additionalProperties: false
                      - description: See [`AuthCall`]
                        type: object
                        required:
                          - contract_id
                          - intent
                          - msg
                        properties:
                          attached_deposit:
                            description: >-
                              Optionally, attach deposit to
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              call. The amount will be subtracted from user's
                              NEP-141 `wNEAR` balance.


                              NOTE: the `wNEAR` will not be refunded in case of
                              fail.
                            type: string
                          contract_id:
                            description: >-
                              Callee for
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          intent:
                            type: string
                            enum:
                              - auth_call
                          min_gas:
                            description: >-
                              Optional minimum gas required for created promise
                              to succeed. By default, only
                              [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
                              required.


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              `msg` to pass in
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling
                              [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                              (in the same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                        additionalProperties: false
                      - description: >-
                          Mint a set of tokens from the signer to a specified
                          account id, within the intents contract.
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_mint
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: Receiver of the minted tokens
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority (i.e. signer of this
                              intent). The final string representation of the
                              token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: Burn a set of imt tokens, within the intents contract.
                        type: object
                        required:
                          - intent
                          - minter_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_burn
                          memo:
                            type: string
                            nullable: true
                          minter_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority. The final string
                              representation of the token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                nonce:
                  type: string
                  description: 'Encoding: base64'
                  example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                signer_id:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
                verifying_contract:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
        public_key:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        standard:
          type: string
          enum:
            - raw_ed25519
      additionalProperties: false
    MultiPayloadWebauthnEd25519__Parsed:
      type: object
      required:
        - authenticator_data
        - client_data_json
        - payload
        - standard
        - public_key
        - signature
      properties:
        authenticator_data:
          description: >-
            Base64Url-encoded
            [authenticatorData](https://w3c.github.io/webauthn/#authenticator-data).
            Encoding: base64
          type: string
        client_data_json:
          description: >-
            Serialized
            [clientDataJSON](https://w3c.github.io/webauthn/#dom-authenticatorresponse-clientdatajson)
          type: string
        payload:
          type: object
          required:
            - original
            - parsed
          additionalProperties: false
          properties:
            original:
              type: string
            parsed:
              type: object
              required:
                - deadline
                - nonce
                - signer_id
                - verifying_contract
              properties:
                deadline:
                  type: string
                intents:
                  description: >-
                    Sequence of intents to execute in given order. Empty list is
                    also a valid sequence, i.e. it doesn't do anything, but
                    still invalidates the `nonce` for the signer WARNING:
                    Promises created by different intents are executed
                    concurrently and does not rely on the order of the intents
                    in this structure
                  type: array
                  items:
                    oneOf:
                      - description: See [`AddPublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - add_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`RemovePublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - remove_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`Transfer`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - transfer
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: See [`FtWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                          - token
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - ft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `ft_transfer`:      minimum:
                              15TGas, default: 15TGas * `ft_transfer_call`:
                              minimum: 30TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `ft_transfer_call`. Otherwise,
                              `ft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`NftWithdraw`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - token
                          - token_id
                        properties:
                          intent:
                            type: string
                            enum:
                              - nft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `nft_transfer`:     
                              minimum: 15TGas, default: 15TGas *
                              `nft_transfer_call`: minimum: 30TGas, default:
                              50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `nft_transfer_call`. Otherwise,
                              `nft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_id:
                            type: string
                        additionalProperties: false
                      - description: See [`MtWithdraw`]
                        type: object
                        required:
                          - amounts
                          - intent
                          - receiver_id
                          - token
                          - token_ids
                        properties:
                          amounts:
                            type: array
                            items:
                              type: string
                          intent:
                            type: string
                            enum:
                              - mt_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed per token: *
                              `mt_batch_transfer`:      minimum: 20TGas,
                              default: 20TGas * `mt_batch_transfer_call`:
                              minimum: 35TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `mt_batch_transfer_call`.
                              Otherwise, `mt_batch_transfer` will be used. NOTE:
                              No refund will be made in case of insufficient
                              `storage_deposit` on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_ids:
                            type: array
                            items:
                              type: string
                        additionalProperties: false
                      - description: See [`NativeWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - native_withdraw
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`StorageDeposit`]
                        type: object
                        required:
                          - amount
                          - contract_id
                          - deposit_for_account_id
                          - intent
                        properties:
                          amount:
                            type: string
                          contract_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          deposit_for_account_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          intent:
                            type: string
                            enum:
                              - storage_deposit
                        additionalProperties: false
                      - description: See [`TokenDiff`]
                        type: object
                        required:
                          - diff
                          - intent
                        properties:
                          diff:
                            type: object
                            additionalProperties:
                              type: string
                          intent:
                            type: string
                            enum:
                              - token_diff
                          memo:
                            type: string
                            nullable: true
                          referral:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                            nullable: true
                        additionalProperties: false
                      - description: See [`SetAuthByPredecessorId`]
                        type: object
                        required:
                          - enabled
                          - intent
                        properties:
                          enabled:
                            type: boolean
                          intent:
                            type: string
                            enum:
                              - set_auth_by_predecessor_id
                        additionalProperties: false
                      - description: See [`AuthCall`]
                        type: object
                        required:
                          - contract_id
                          - intent
                          - msg
                        properties:
                          attached_deposit:
                            description: >-
                              Optionally, attach deposit to
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              call. The amount will be subtracted from user's
                              NEP-141 `wNEAR` balance.


                              NOTE: the `wNEAR` will not be refunded in case of
                              fail.
                            type: string
                          contract_id:
                            description: >-
                              Callee for
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          intent:
                            type: string
                            enum:
                              - auth_call
                          min_gas:
                            description: >-
                              Optional minimum gas required for created promise
                              to succeed. By default, only
                              [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
                              required.


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              `msg` to pass in
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling
                              [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                              (in the same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                        additionalProperties: false
                      - description: >-
                          Mint a set of tokens from the signer to a specified
                          account id, within the intents contract.
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_mint
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: Receiver of the minted tokens
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority (i.e. signer of this
                              intent). The final string representation of the
                              token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: Burn a set of imt tokens, within the intents contract.
                        type: object
                        required:
                          - intent
                          - minter_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_burn
                          memo:
                            type: string
                            nullable: true
                          minter_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority. The final string
                              representation of the token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                nonce:
                  type: string
                  description: 'Encoding: base64'
                  example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                signer_id:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
                verifying_contract:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
        standard:
          type: string
          enum:
            - webauthn
        public_key:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
      description: >-
        [COSE EdDSA (-8)
        algorithm](https://www.iana.org/assignments/cose/cose.xhtml#algorithms):
        ed25519 curve
      additionalProperties: false
    MultiPayloadWebauthnP256__Parsed:
      type: object
      required:
        - authenticator_data
        - client_data_json
        - payload
        - standard
        - public_key
        - signature
      properties:
        authenticator_data:
          description: >-
            Base64Url-encoded
            [authenticatorData](https://w3c.github.io/webauthn/#authenticator-data).
            Encoding: base64
          type: string
        client_data_json:
          description: >-
            Serialized
            [clientDataJSON](https://w3c.github.io/webauthn/#dom-authenticatorresponse-clientdatajson)
          type: string
        payload:
          type: object
          required:
            - original
            - parsed
          additionalProperties: false
          properties:
            original:
              type: string
            parsed:
              type: object
              required:
                - deadline
                - nonce
                - signer_id
                - verifying_contract
              properties:
                deadline:
                  type: string
                intents:
                  description: >-
                    Sequence of intents to execute in given order. Empty list is
                    also a valid sequence, i.e. it doesn't do anything, but
                    still invalidates the `nonce` for the signer WARNING:
                    Promises created by different intents are executed
                    concurrently and does not rely on the order of the intents
                    in this structure
                  type: array
                  items:
                    oneOf:
                      - description: See [`AddPublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - add_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`RemovePublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - remove_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`Transfer`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - transfer
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: See [`FtWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                          - token
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - ft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `ft_transfer`:      minimum:
                              15TGas, default: 15TGas * `ft_transfer_call`:
                              minimum: 30TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `ft_transfer_call`. Otherwise,
                              `ft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`NftWithdraw`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - token
                          - token_id
                        properties:
                          intent:
                            type: string
                            enum:
                              - nft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `nft_transfer`:     
                              minimum: 15TGas, default: 15TGas *
                              `nft_transfer_call`: minimum: 30TGas, default:
                              50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `nft_transfer_call`. Otherwise,
                              `nft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_id:
                            type: string
                        additionalProperties: false
                      - description: See [`MtWithdraw`]
                        type: object
                        required:
                          - amounts
                          - intent
                          - receiver_id
                          - token
                          - token_ids
                        properties:
                          amounts:
                            type: array
                            items:
                              type: string
                          intent:
                            type: string
                            enum:
                              - mt_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed per token: *
                              `mt_batch_transfer`:      minimum: 20TGas,
                              default: 20TGas * `mt_batch_transfer_call`:
                              minimum: 35TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `mt_batch_transfer_call`.
                              Otherwise, `mt_batch_transfer` will be used. NOTE:
                              No refund will be made in case of insufficient
                              `storage_deposit` on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_ids:
                            type: array
                            items:
                              type: string
                        additionalProperties: false
                      - description: See [`NativeWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - native_withdraw
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`StorageDeposit`]
                        type: object
                        required:
                          - amount
                          - contract_id
                          - deposit_for_account_id
                          - intent
                        properties:
                          amount:
                            type: string
                          contract_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          deposit_for_account_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          intent:
                            type: string
                            enum:
                              - storage_deposit
                        additionalProperties: false
                      - description: See [`TokenDiff`]
                        type: object
                        required:
                          - diff
                          - intent
                        properties:
                          diff:
                            type: object
                            additionalProperties:
                              type: string
                          intent:
                            type: string
                            enum:
                              - token_diff
                          memo:
                            type: string
                            nullable: true
                          referral:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                            nullable: true
                        additionalProperties: false
                      - description: See [`SetAuthByPredecessorId`]
                        type: object
                        required:
                          - enabled
                          - intent
                        properties:
                          enabled:
                            type: boolean
                          intent:
                            type: string
                            enum:
                              - set_auth_by_predecessor_id
                        additionalProperties: false
                      - description: See [`AuthCall`]
                        type: object
                        required:
                          - contract_id
                          - intent
                          - msg
                        properties:
                          attached_deposit:
                            description: >-
                              Optionally, attach deposit to
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              call. The amount will be subtracted from user's
                              NEP-141 `wNEAR` balance.


                              NOTE: the `wNEAR` will not be refunded in case of
                              fail.
                            type: string
                          contract_id:
                            description: >-
                              Callee for
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          intent:
                            type: string
                            enum:
                              - auth_call
                          min_gas:
                            description: >-
                              Optional minimum gas required for created promise
                              to succeed. By default, only
                              [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
                              required.


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              `msg` to pass in
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling
                              [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                              (in the same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                        additionalProperties: false
                      - description: >-
                          Mint a set of tokens from the signer to a specified
                          account id, within the intents contract.
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_mint
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: Receiver of the minted tokens
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority (i.e. signer of this
                              intent). The final string representation of the
                              token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: Burn a set of imt tokens, within the intents contract.
                        type: object
                        required:
                          - intent
                          - minter_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_burn
                          memo:
                            type: string
                            nullable: true
                          minter_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority. The final string
                              representation of the token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                nonce:
                  type: string
                  description: 'Encoding: base64'
                  example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                signer_id:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
                verifying_contract:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
        standard:
          type: string
          enum:
            - webauthn
        public_key:
          type: string
          pattern: '^p256:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^p256:'
          description: 'Encoding: base58'
      description: >-
        [COSE ES256 (-7)
        algorithm](https://www.iana.org/assignments/cose/cose.xhtml#algorithms):
        NIST P-256 curve (a.k.a secp256r1) over SHA-256
      additionalProperties: false
    TonConnectPayloadSchema__Parsed:
      oneOf:
        - type: object
          required:
            - text
            - type
          properties:
            text:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
            type:
              type: string
              enum:
                - text
          additionalProperties: false
    MultiPayloadTonConnect__Parsed:
      description: >-
        TonConnect: The standard for data signing in TON blockchain platform.
        For more details, refer to [TonConnect
        documentation](https://docs.tonconsole.com/academy/sign-data).
      type: object
      required:
        - address
        - domain
        - payload
        - public_key
        - signature
        - standard
        - timestamp
      properties:
        address:
          description: >-
            Wallet address in either
            [Raw](https://docs.ton.org/v3/documentation/smart-contracts/addresses/address-formats#raw-address)
            representation or
            [user-friendly](https://docs.ton.org/v3/documentation/smart-contracts/addresses/address-formats#user-friendly-address)
            format
          allOf:
            - type: string
        domain:
          description: dApp domain
          type: string
        payload:
          oneOf:
            - type: object
              required:
                - text
                - type
              properties:
                text:
                  type: object
                  required:
                    - original
                    - parsed
                  additionalProperties: false
                  properties:
                    original:
                      type: string
                    parsed:
                      type: object
                      required:
                        - deadline
                        - nonce
                        - signer_id
                        - verifying_contract
                      properties:
                        deadline:
                          type: string
                        intents:
                          description: >-
                            Sequence of intents to execute in given order. Empty
                            list is also a valid sequence, i.e. it doesn't do
                            anything, but still invalidates the `nonce` for the
                            signer WARNING: Promises created by different
                            intents are executed concurrently and does not rely
                            on the order of the intents in this structure
                          type: array
                          items:
                            oneOf:
                              - description: See [`AddPublicKey`]
                                type: object
                                required:
                                  - intent
                                  - public_key
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - add_public_key
                                  public_key:
                                    type: string
                                    description: 'Encoding: base58'
                                    example: >-
                                      ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                additionalProperties: false
                              - description: See [`RemovePublicKey`]
                                type: object
                                required:
                                  - intent
                                  - public_key
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - remove_public_key
                                  public_key:
                                    type: string
                                    description: 'Encoding: base58'
                                    example: >-
                                      ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                additionalProperties: false
                              - description: See [`Transfer`]
                                type: object
                                required:
                                  - intent
                                  - receiver_id
                                  - tokens
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - transfer
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Minimum gas for `mt_on_transfer()`


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: Message to pass to `mt_on_transfer`
                                    type: string
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  state_init:
                                    description: >-
                                      Optionally initialize the receiver's
                                      contract (Deterministic AccountId) via
                                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                      right before calling `mt_on_transfer()`
                                      (in the same receipt).
                                    anyOf:
                                      - oneOf:
                                          - type: object
                                            required:
                                              - code
                                              - data
                                              - version
                                            properties:
                                              code:
                                                oneOf:
                                                  - type: object
                                                    required:
                                                      - hash
                                                    properties:
                                                      hash:
                                                        type: string
                                                    additionalProperties: false
                                                  - type: object
                                                    required:
                                                      - account_id
                                                    properties:
                                                      account_id:
                                                        description: >-
                                                          NEAR Account Identifier.


                                                          This is a unique, syntactically valid,
                                                          human-readable account identifier on the
                                                          NEAR network.


                                                          [See the crate-level docs for
                                                          information about
                                                          validation.](index.html#account-id-rules)


                                                          Also see [Error kind
                                                          precedence](AccountId#error-kind-precedence).


                                                          ## Examples


                                                          ``` use near_account_id::AccountId;


                                                          let alice: AccountId =
                                                          "alice.near".parse().unwrap();


                                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                          // (ƒ is not f) ```
                                                        type: string
                                                    additionalProperties: false
                                              data:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              version:
                                                type: string
                                                enum:
                                                  - v1
                                            additionalProperties: false
                                        nullable: true
                                  tokens:
                                    type: object
                                    additionalProperties:
                                      type: string
                                additionalProperties: false
                              - description: See [`FtWithdraw`]
                                type: object
                                required:
                                  - amount
                                  - intent
                                  - receiver_id
                                  - token
                                properties:
                                  amount:
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - ft_withdraw
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Optional minimum required Near gas for
                                      created Promise to succeed: *
                                      `ft_transfer`:      minimum: 15TGas,
                                      default: 15TGas * `ft_transfer_call`:
                                      minimum: 30TGas, default: 50TGas


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      Message to pass to `ft_transfer_call`.
                                      Otherwise, `ft_transfer` will be used.
                                      NOTE: No refund will be made in case of
                                      insufficient `storage_deposit` on `token`
                                      for `receiver_id`
                                    type: string
                                    nullable: true
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  storage_deposit:
                                    description: >-
                                      Optionally make `storage_deposit` for
                                      `receiver_id` on `token`. The amount will
                                      be subtracted from user's NEP-141 `wNEAR`
                                      balance. NOTE: the `wNEAR` will not be
                                      refunded in case of fail
                                    type: string
                                    nullable: true
                                  token:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                additionalProperties: false
                              - description: See [`NftWithdraw`]
                                type: object
                                required:
                                  - intent
                                  - receiver_id
                                  - token
                                  - token_id
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - nft_withdraw
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Optional minimum required Near gas for
                                      created Promise to succeed: *
                                      `nft_transfer`:      minimum: 15TGas,
                                      default: 15TGas * `nft_transfer_call`:
                                      minimum: 30TGas, default: 50TGas


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      Message to pass to `nft_transfer_call`.
                                      Otherwise, `nft_transfer` will be used.
                                      NOTE: No refund will be made in case of
                                      insufficient `storage_deposit` on `token`
                                      for `receiver_id`
                                    type: string
                                    nullable: true
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  storage_deposit:
                                    description: >-
                                      Optionally make `storage_deposit` for
                                      `receiver_id` on `token`. The amount will
                                      be subtracted from user's NEP-141 `wNEAR`
                                      balance. NOTE: the `wNEAR` will not be
                                      refunded in case of fail
                                    type: string
                                    nullable: true
                                  token:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  token_id:
                                    type: string
                                additionalProperties: false
                              - description: See [`MtWithdraw`]
                                type: object
                                required:
                                  - amounts
                                  - intent
                                  - receiver_id
                                  - token
                                  - token_ids
                                properties:
                                  amounts:
                                    type: array
                                    items:
                                      type: string
                                  intent:
                                    type: string
                                    enum:
                                      - mt_withdraw
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Optional minimum required Near gas for
                                      created Promise to succeed per token: *
                                      `mt_batch_transfer`:      minimum: 20TGas,
                                      default: 20TGas *
                                      `mt_batch_transfer_call`: minimum: 35TGas,
                                      default: 50TGas


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      Message to pass to
                                      `mt_batch_transfer_call`. Otherwise,
                                      `mt_batch_transfer` will be used. NOTE: No
                                      refund will be made in case of
                                      insufficient `storage_deposit` on `token`
                                      for `receiver_id`
                                    type: string
                                    nullable: true
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  storage_deposit:
                                    description: >-
                                      Optionally make `storage_deposit` for
                                      `receiver_id` on `token`. The amount will
                                      be subtracted from user's NEP-141 `wNEAR`
                                      balance. NOTE: the `wNEAR` will not be
                                      refunded in case of fail
                                    type: string
                                    nullable: true
                                  token:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  token_ids:
                                    type: array
                                    items:
                                      type: string
                                additionalProperties: false
                              - description: See [`NativeWithdraw`]
                                type: object
                                required:
                                  - amount
                                  - intent
                                  - receiver_id
                                properties:
                                  amount:
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - native_withdraw
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                additionalProperties: false
                              - description: See [`StorageDeposit`]
                                type: object
                                required:
                                  - amount
                                  - contract_id
                                  - deposit_for_account_id
                                  - intent
                                properties:
                                  amount:
                                    type: string
                                  contract_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  deposit_for_account_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - storage_deposit
                                additionalProperties: false
                              - description: See [`TokenDiff`]
                                type: object
                                required:
                                  - diff
                                  - intent
                                properties:
                                  diff:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  intent:
                                    type: string
                                    enum:
                                      - token_diff
                                  memo:
                                    type: string
                                    nullable: true
                                  referral:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                    nullable: true
                                additionalProperties: false
                              - description: See [`SetAuthByPredecessorId`]
                                type: object
                                required:
                                  - enabled
                                  - intent
                                properties:
                                  enabled:
                                    type: boolean
                                  intent:
                                    type: string
                                    enum:
                                      - set_auth_by_predecessor_id
                                additionalProperties: false
                              - description: See [`AuthCall`]
                                type: object
                                required:
                                  - contract_id
                                  - intent
                                  - msg
                                properties:
                                  attached_deposit:
                                    description: >-
                                      Optionally, attach deposit to
                                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                      call. The amount will be subtracted from
                                      user's NEP-141 `wNEAR` balance.


                                      NOTE: the `wNEAR` will not be refunded in
                                      case of fail.
                                    type: string
                                  contract_id:
                                    description: >-
                                      Callee for
                                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - auth_call
                                  min_gas:
                                    description: >-
                                      Optional minimum gas required for created
                                      promise to succeed. By default, only
                                      [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                      is required.


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      `msg` to pass in
                                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                    type: string
                                  state_init:
                                    description: >-
                                      Optionally initialize the receiver's
                                      contract (Deterministic AccountId) via
                                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                      right before calling
                                      [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                      (in the same receipt).
                                    anyOf:
                                      - oneOf:
                                          - type: object
                                            required:
                                              - code
                                              - data
                                              - version
                                            properties:
                                              code:
                                                oneOf:
                                                  - type: object
                                                    required:
                                                      - hash
                                                    properties:
                                                      hash:
                                                        type: string
                                                    additionalProperties: false
                                                  - type: object
                                                    required:
                                                      - account_id
                                                    properties:
                                                      account_id:
                                                        description: >-
                                                          NEAR Account Identifier.


                                                          This is a unique, syntactically valid,
                                                          human-readable account identifier on the
                                                          NEAR network.


                                                          [See the crate-level docs for
                                                          information about
                                                          validation.](index.html#account-id-rules)


                                                          Also see [Error kind
                                                          precedence](AccountId#error-kind-precedence).


                                                          ## Examples


                                                          ``` use near_account_id::AccountId;


                                                          let alice: AccountId =
                                                          "alice.near".parse().unwrap();


                                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                          // (ƒ is not f) ```
                                                        type: string
                                                    additionalProperties: false
                                              data:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              version:
                                                type: string
                                                enum:
                                                  - v1
                                            additionalProperties: false
                                        nullable: true
                                additionalProperties: false
                              - description: >-
                                  Mint a set of tokens from the signer to a
                                  specified account id, within the intents
                                  contract.
                                type: object
                                required:
                                  - intent
                                  - receiver_id
                                  - tokens
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - imt_mint
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Minimum gas for `mt_on_transfer()`


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: Message to pass to `mt_on_transfer`
                                    type: string
                                  receiver_id:
                                    description: Receiver of the minted tokens
                                    type: string
                                  state_init:
                                    description: >-
                                      Optionally initialize the receiver's
                                      contract (Deterministic AccountId) via
                                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                      right before calling `mt_on_transfer()`
                                      (in the same receipt).
                                    anyOf:
                                      - oneOf:
                                          - type: object
                                            required:
                                              - code
                                              - data
                                              - version
                                            properties:
                                              code:
                                                oneOf:
                                                  - type: object
                                                    required:
                                                      - hash
                                                    properties:
                                                      hash:
                                                        type: string
                                                    additionalProperties: false
                                                  - type: object
                                                    required:
                                                      - account_id
                                                    properties:
                                                      account_id:
                                                        description: >-
                                                          NEAR Account Identifier.


                                                          This is a unique, syntactically valid,
                                                          human-readable account identifier on the
                                                          NEAR network.


                                                          [See the crate-level docs for
                                                          information about
                                                          validation.](index.html#account-id-rules)


                                                          Also see [Error kind
                                                          precedence](AccountId#error-kind-precedence).


                                                          ## Examples


                                                          ``` use near_account_id::AccountId;


                                                          let alice: AccountId =
                                                          "alice.near".parse().unwrap();


                                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                          // (ƒ is not f) ```
                                                        type: string
                                                    additionalProperties: false
                                              data:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              version:
                                                type: string
                                                enum:
                                                  - v1
                                            additionalProperties: false
                                        nullable: true
                                  tokens:
                                    description: >-
                                      The token_ids will be wrapped to bind the
                                      token ID to the minter authority (i.e.
                                      signer of this intent). The final string
                                      representation of the token will be as
                                      follows: `imt:<minter_id>:<token_id>`
                                    type: object
                                    additionalProperties:
                                      type: string
                                additionalProperties: false
                              - description: >-
                                  Burn a set of imt tokens, within the intents
                                  contract.
                                type: object
                                required:
                                  - intent
                                  - minter_id
                                  - tokens
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - imt_burn
                                  memo:
                                    type: string
                                    nullable: true
                                  minter_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  tokens:
                                    description: >-
                                      The token_ids will be wrapped to bind the
                                      token ID to the minter authority. The
                                      final string representation of the token
                                      will be as follows:
                                      `imt:<minter_id>:<token_id>`
                                    type: object
                                    additionalProperties:
                                      type: string
                                additionalProperties: false
                        nonce:
                          type: string
                          description: 'Encoding: base64'
                          example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                        signer_id:
                          description: >-
                            NEAR Account Identifier.


                            This is a unique, syntactically valid,
                            human-readable account identifier on the NEAR
                            network.


                            [See the crate-level docs for information about
                            validation.](index.html#account-id-rules)


                            Also see [Error kind
                            precedence](AccountId#error-kind-precedence).


                            ## Examples


                            ``` use near_account_id::AccountId;


                            let alice: AccountId =
                            "alice.near".parse().unwrap();


                            assert!("ƒelicia.near".parse::<AccountId>().is_err());
                            // (ƒ is not f) ```
                          type: string
                        verifying_contract:
                          description: >-
                            NEAR Account Identifier.


                            This is a unique, syntactically valid,
                            human-readable account identifier on the NEAR
                            network.


                            [See the crate-level docs for information about
                            validation.](index.html#account-id-rules)


                            Also see [Error kind
                            precedence](AccountId#error-kind-precedence).


                            ## Examples


                            ``` use near_account_id::AccountId;


                            let alice: AccountId =
                            "alice.near".parse().unwrap();


                            assert!("ƒelicia.near".parse::<AccountId>().is_err());
                            // (ƒ is not f) ```
                          type: string
                type:
                  type: string
                  enum:
                    - text
              additionalProperties: false
        public_key:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        standard:
          type: string
          enum:
            - ton_connect
        timestamp:
          description: UNIX timestamp (in seconds or RFC3339) at the time of singing
          allOf:
            - anyOf:
                - type: string
                  format: date-time
                - writeOnly: true
                  allOf:
                    - type: integer
                      format: int64
      additionalProperties: false
    MultiPayloadSep53__Parsed:
      description: >-
        SEP-53: The standard for signing data off-chain for Stellar accounts.
        See
        [SEP-53](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0053.md)
      type: object
      required:
        - payload
        - public_key
        - signature
        - standard
      properties:
        payload:
          type: object
          required:
            - original
            - parsed
          additionalProperties: false
          properties:
            original:
              type: string
            parsed:
              type: object
              required:
                - deadline
                - nonce
                - signer_id
                - verifying_contract
              properties:
                deadline:
                  type: string
                intents:
                  description: >-
                    Sequence of intents to execute in given order. Empty list is
                    also a valid sequence, i.e. it doesn't do anything, but
                    still invalidates the `nonce` for the signer WARNING:
                    Promises created by different intents are executed
                    concurrently and does not rely on the order of the intents
                    in this structure
                  type: array
                  items:
                    oneOf:
                      - description: See [`AddPublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - add_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`RemovePublicKey`]
                        type: object
                        required:
                          - intent
                          - public_key
                        properties:
                          intent:
                            type: string
                            enum:
                              - remove_public_key
                          public_key:
                            type: string
                            description: 'Encoding: base58'
                            example: >-
                              ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                        additionalProperties: false
                      - description: See [`Transfer`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - transfer
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: See [`FtWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                          - token
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - ft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `ft_transfer`:      minimum:
                              15TGas, default: 15TGas * `ft_transfer_call`:
                              minimum: 30TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `ft_transfer_call`. Otherwise,
                              `ft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`NftWithdraw`]
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - token
                          - token_id
                        properties:
                          intent:
                            type: string
                            enum:
                              - nft_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed: * `nft_transfer`:     
                              minimum: 15TGas, default: 15TGas *
                              `nft_transfer_call`: minimum: 30TGas, default:
                              50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `nft_transfer_call`. Otherwise,
                              `nft_transfer` will be used. NOTE: No refund will
                              be made in case of insufficient `storage_deposit`
                              on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_id:
                            type: string
                        additionalProperties: false
                      - description: See [`MtWithdraw`]
                        type: object
                        required:
                          - amounts
                          - intent
                          - receiver_id
                          - token
                          - token_ids
                        properties:
                          amounts:
                            type: array
                            items:
                              type: string
                          intent:
                            type: string
                            enum:
                              - mt_withdraw
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Optional minimum required Near gas for created
                              Promise to succeed per token: *
                              `mt_batch_transfer`:      minimum: 20TGas,
                              default: 20TGas * `mt_batch_transfer_call`:
                              minimum: 35TGas, default: 50TGas


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              Message to pass to `mt_batch_transfer_call`.
                              Otherwise, `mt_batch_transfer` will be used. NOTE:
                              No refund will be made in case of insufficient
                              `storage_deposit` on `token` for `receiver_id`
                            type: string
                            nullable: true
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          storage_deposit:
                            description: >-
                              Optionally make `storage_deposit` for
                              `receiver_id` on `token`. The amount will be
                              subtracted from user's NEP-141 `wNEAR` balance.
                              NOTE: the `wNEAR` will not be refunded in case of
                              fail
                            type: string
                            nullable: true
                          token:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          token_ids:
                            type: array
                            items:
                              type: string
                        additionalProperties: false
                      - description: See [`NativeWithdraw`]
                        type: object
                        required:
                          - amount
                          - intent
                          - receiver_id
                        properties:
                          amount:
                            type: string
                          intent:
                            type: string
                            enum:
                              - native_withdraw
                          receiver_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                        additionalProperties: false
                      - description: See [`StorageDeposit`]
                        type: object
                        required:
                          - amount
                          - contract_id
                          - deposit_for_account_id
                          - intent
                        properties:
                          amount:
                            type: string
                          contract_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          deposit_for_account_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          intent:
                            type: string
                            enum:
                              - storage_deposit
                        additionalProperties: false
                      - description: See [`TokenDiff`]
                        type: object
                        required:
                          - diff
                          - intent
                        properties:
                          diff:
                            type: object
                            additionalProperties:
                              type: string
                          intent:
                            type: string
                            enum:
                              - token_diff
                          memo:
                            type: string
                            nullable: true
                          referral:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                            nullable: true
                        additionalProperties: false
                      - description: See [`SetAuthByPredecessorId`]
                        type: object
                        required:
                          - enabled
                          - intent
                        properties:
                          enabled:
                            type: boolean
                          intent:
                            type: string
                            enum:
                              - set_auth_by_predecessor_id
                        additionalProperties: false
                      - description: See [`AuthCall`]
                        type: object
                        required:
                          - contract_id
                          - intent
                          - msg
                        properties:
                          attached_deposit:
                            description: >-
                              Optionally, attach deposit to
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                              call. The amount will be subtracted from user's
                              NEP-141 `wNEAR` balance.


                              NOTE: the `wNEAR` will not be refunded in case of
                              fail.
                            type: string
                          contract_id:
                            description: >-
                              Callee for
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          intent:
                            type: string
                            enum:
                              - auth_call
                          min_gas:
                            description: >-
                              Optional minimum gas required for created promise
                              to succeed. By default, only
                              [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is
                              required.


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: >-
                              `msg` to pass in
                              [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling
                              [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                              (in the same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                        additionalProperties: false
                      - description: >-
                          Mint a set of tokens from the signer to a specified
                          account id, within the intents contract.
                        type: object
                        required:
                          - intent
                          - receiver_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_mint
                          memo:
                            type: string
                            nullable: true
                          min_gas:
                            description: >-
                              Minimum gas for `mt_on_transfer()`


                              Remaining gas will be distributed evenly across
                              all Function Call Promises created during
                              execution of current receipt.
                            type: string
                            nullable: true
                          msg:
                            description: Message to pass to `mt_on_transfer`
                            type: string
                          receiver_id:
                            description: Receiver of the minted tokens
                            type: string
                          state_init:
                            description: >-
                              Optionally initialize the receiver's contract
                              (Deterministic AccountId) via
                              [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                              right before calling `mt_on_transfer()` (in the
                              same receipt).
                            anyOf:
                              - oneOf:
                                  - type: object
                                    required:
                                      - code
                                      - data
                                      - version
                                    properties:
                                      code:
                                        oneOf:
                                          - type: object
                                            required:
                                              - hash
                                            properties:
                                              hash:
                                                type: string
                                            additionalProperties: false
                                          - type: object
                                            required:
                                              - account_id
                                            properties:
                                              account_id:
                                                description: >-
                                                  NEAR Account Identifier.


                                                  This is a unique, syntactically valid,
                                                  human-readable account identifier on the
                                                  NEAR network.


                                                  [See the crate-level docs for
                                                  information about
                                                  validation.](index.html#account-id-rules)


                                                  Also see [Error kind
                                                  precedence](AccountId#error-kind-precedence).


                                                  ## Examples


                                                  ``` use near_account_id::AccountId;


                                                  let alice: AccountId =
                                                  "alice.near".parse().unwrap();


                                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                  // (ƒ is not f) ```
                                                type: string
                                            additionalProperties: false
                                      data:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      version:
                                        type: string
                                        enum:
                                          - v1
                                    additionalProperties: false
                                nullable: true
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority (i.e. signer of this
                              intent). The final string representation of the
                              token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                      - description: Burn a set of imt tokens, within the intents contract.
                        type: object
                        required:
                          - intent
                          - minter_id
                          - tokens
                        properties:
                          intent:
                            type: string
                            enum:
                              - imt_burn
                          memo:
                            type: string
                            nullable: true
                          minter_id:
                            description: >-
                              NEAR Account Identifier.


                              This is a unique, syntactically valid,
                              human-readable account identifier on the NEAR
                              network.


                              [See the crate-level docs for information about
                              validation.](index.html#account-id-rules)


                              Also see [Error kind
                              precedence](AccountId#error-kind-precedence).


                              ## Examples


                              ``` use near_account_id::AccountId;


                              let alice: AccountId =
                              "alice.near".parse().unwrap();


                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                              // (ƒ is not f) ```
                            type: string
                          tokens:
                            description: >-
                              The token_ids will be wrapped to bind the token ID
                              to the minter authority. The final string
                              representation of the token will be as follows:
                              `imt:<minter_id>:<token_id>`
                            type: object
                            additionalProperties:
                              type: string
                        additionalProperties: false
                nonce:
                  type: string
                  description: 'Encoding: base64'
                  example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                signer_id:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
                verifying_contract:
                  description: >-
                    NEAR Account Identifier.


                    This is a unique, syntactically valid, human-readable
                    account identifier on the NEAR network.


                    [See the crate-level docs for information about
                    validation.](index.html#account-id-rules)


                    Also see [Error kind
                    precedence](AccountId#error-kind-precedence).


                    ## Examples


                    ``` use near_account_id::AccountId;


                    let alice: AccountId = "alice.near".parse().unwrap();


                    assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ
                    is not f) ```
                  type: string
        public_key:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        signature:
          type: string
          pattern: '^ed25519:'
          description: 'Encoding: base58'
        standard:
          type: string
          enum:
            - sep53
      additionalProperties: false
    MultiPayloadNarrowed:
      description: >-
        Narrowed MultiPayload union with only 'standard' and 'payload'
        properties exposed
      oneOf:
        - $ref: '#/components/schemas/MultiPayloadNep413Narrowed'
        - $ref: '#/components/schemas/MultiPayloadErc191Narrowed'
        - $ref: '#/components/schemas/MultiPayloadTip191Narrowed'
        - $ref: '#/components/schemas/MultiPayloadRawEd25519Narrowed'
        - $ref: '#/components/schemas/MultiPayloadWebauthnNarrowed'
        - $ref: '#/components/schemas/MultiPayloadTonConnectNarrowed'
        - $ref: '#/components/schemas/MultiPayloadSep53Narrowed'
      discriminator:
        propertyName: standard
        mapping:
          nep413: '#/components/schemas/MultiPayloadNep413Narrowed'
          erc191: '#/components/schemas/MultiPayloadErc191Narrowed'
          tip191: '#/components/schemas/MultiPayloadTip191Narrowed'
          raw_ed25519: '#/components/schemas/MultiPayloadRawEd25519Narrowed'
          webauthn: '#/components/schemas/MultiPayloadWebauthnNarrowed'
          ton_connect: '#/components/schemas/MultiPayloadTonConnectNarrowed'
          sep53: '#/components/schemas/MultiPayloadSep53Narrowed'
    MultiPayload__Parsed:
      oneOf:
        - description: >-
            NEP-413: The standard for message signing in Near Protocol. For more
            details, refer to
            [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md).
          type: object
          required:
            - payload
            - public_key
            - signature
            - standard
          properties:
            payload:
              description: >-
                See
                [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md)
              type: object
              required:
                - message
                - nonce
                - recipient
              properties:
                callbackUrl:
                  type: string
                  nullable: true
                message:
                  type: object
                  required:
                    - original
                    - parsed
                  additionalProperties: false
                  properties:
                    original:
                      type: string
                    parsed:
                      type: object
                      required:
                        - deadline
                        - signer_id
                      properties:
                        deadline:
                          type: string
                        signer_id:
                          description: >-
                            NEAR Account Identifier.


                            This is a unique, syntactically valid,
                            human-readable account identifier on the NEAR
                            network.


                            [See the crate-level docs for information about
                            validation.](index.html#account-id-rules)


                            Also see [Error kind
                            precedence](AccountId#error-kind-precedence).


                            ## Examples


                            ``` use near_account_id::AccountId;


                            let alice: AccountId =
                            "alice.near".parse().unwrap();


                            assert!("ƒelicia.near".parse::<AccountId>().is_err());
                            // (ƒ is not f) ```
                          type: string
                        intents:
                          description: >-
                            Sequence of intents to execute in given order. Empty
                            list is also a valid sequence, i.e. it doesn't do
                            anything, but still invalidates the `nonce` for the
                            signer WARNING: Promises created by different
                            intents are executed concurrently and does not rely
                            on the order of the intents in this structure
                          type: array
                          items:
                            oneOf:
                              - description: See [`AddPublicKey`]
                                type: object
                                required:
                                  - intent
                                  - public_key
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - add_public_key
                                  public_key:
                                    type: string
                                    description: 'Encoding: base58'
                                    example: >-
                                      ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                additionalProperties: false
                              - description: See [`RemovePublicKey`]
                                type: object
                                required:
                                  - intent
                                  - public_key
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - remove_public_key
                                  public_key:
                                    type: string
                                    description: 'Encoding: base58'
                                    example: >-
                                      ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                additionalProperties: false
                              - description: See [`Transfer`]
                                type: object
                                required:
                                  - intent
                                  - receiver_id
                                  - tokens
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - transfer
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Minimum gas for `mt_on_transfer()`


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: Message to pass to `mt_on_transfer`
                                    type: string
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  state_init:
                                    description: >-
                                      Optionally initialize the receiver's
                                      contract (Deterministic AccountId) via
                                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                      right before calling `mt_on_transfer()`
                                      (in the same receipt).
                                    anyOf:
                                      - oneOf:
                                          - type: object
                                            required:
                                              - code
                                              - data
                                              - version
                                            properties:
                                              code:
                                                oneOf:
                                                  - type: object
                                                    required:
                                                      - hash
                                                    properties:
                                                      hash:
                                                        type: string
                                                    additionalProperties: false
                                                  - type: object
                                                    required:
                                                      - account_id
                                                    properties:
                                                      account_id:
                                                        description: >-
                                                          NEAR Account Identifier.


                                                          This is a unique, syntactically valid,
                                                          human-readable account identifier on the
                                                          NEAR network.


                                                          [See the crate-level docs for
                                                          information about
                                                          validation.](index.html#account-id-rules)


                                                          Also see [Error kind
                                                          precedence](AccountId#error-kind-precedence).


                                                          ## Examples


                                                          ``` use near_account_id::AccountId;


                                                          let alice: AccountId =
                                                          "alice.near".parse().unwrap();


                                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                          // (ƒ is not f) ```
                                                        type: string
                                                    additionalProperties: false
                                              data:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              version:
                                                type: string
                                                enum:
                                                  - v1
                                            additionalProperties: false
                                        nullable: true
                                  tokens:
                                    type: object
                                    additionalProperties:
                                      type: string
                                additionalProperties: false
                              - description: See [`FtWithdraw`]
                                type: object
                                required:
                                  - amount
                                  - intent
                                  - receiver_id
                                  - token
                                properties:
                                  amount:
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - ft_withdraw
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Optional minimum required Near gas for
                                      created Promise to succeed: *
                                      `ft_transfer`:      minimum: 15TGas,
                                      default: 15TGas * `ft_transfer_call`:
                                      minimum: 30TGas, default: 50TGas


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      Message to pass to `ft_transfer_call`.
                                      Otherwise, `ft_transfer` will be used.
                                      NOTE: No refund will be made in case of
                                      insufficient `storage_deposit` on `token`
                                      for `receiver_id`
                                    type: string
                                    nullable: true
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  storage_deposit:
                                    description: >-
                                      Optionally make `storage_deposit` for
                                      `receiver_id` on `token`. The amount will
                                      be subtracted from user's NEP-141 `wNEAR`
                                      balance. NOTE: the `wNEAR` will not be
                                      refunded in case of fail
                                    type: string
                                    nullable: true
                                  token:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                additionalProperties: false
                              - description: See [`NftWithdraw`]
                                type: object
                                required:
                                  - intent
                                  - receiver_id
                                  - token
                                  - token_id
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - nft_withdraw
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Optional minimum required Near gas for
                                      created Promise to succeed: *
                                      `nft_transfer`:      minimum: 15TGas,
                                      default: 15TGas * `nft_transfer_call`:
                                      minimum: 30TGas, default: 50TGas


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      Message to pass to `nft_transfer_call`.
                                      Otherwise, `nft_transfer` will be used.
                                      NOTE: No refund will be made in case of
                                      insufficient `storage_deposit` on `token`
                                      for `receiver_id`
                                    type: string
                                    nullable: true
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  storage_deposit:
                                    description: >-
                                      Optionally make `storage_deposit` for
                                      `receiver_id` on `token`. The amount will
                                      be subtracted from user's NEP-141 `wNEAR`
                                      balance. NOTE: the `wNEAR` will not be
                                      refunded in case of fail
                                    type: string
                                    nullable: true
                                  token:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  token_id:
                                    type: string
                                additionalProperties: false
                              - description: See [`MtWithdraw`]
                                type: object
                                required:
                                  - amounts
                                  - intent
                                  - receiver_id
                                  - token
                                  - token_ids
                                properties:
                                  amounts:
                                    type: array
                                    items:
                                      type: string
                                  intent:
                                    type: string
                                    enum:
                                      - mt_withdraw
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Optional minimum required Near gas for
                                      created Promise to succeed per token: *
                                      `mt_batch_transfer`:      minimum: 20TGas,
                                      default: 20TGas *
                                      `mt_batch_transfer_call`: minimum: 35TGas,
                                      default: 50TGas


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      Message to pass to
                                      `mt_batch_transfer_call`. Otherwise,
                                      `mt_batch_transfer` will be used. NOTE: No
                                      refund will be made in case of
                                      insufficient `storage_deposit` on `token`
                                      for `receiver_id`
                                    type: string
                                    nullable: true
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  storage_deposit:
                                    description: >-
                                      Optionally make `storage_deposit` for
                                      `receiver_id` on `token`. The amount will
                                      be subtracted from user's NEP-141 `wNEAR`
                                      balance. NOTE: the `wNEAR` will not be
                                      refunded in case of fail
                                    type: string
                                    nullable: true
                                  token:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  token_ids:
                                    type: array
                                    items:
                                      type: string
                                additionalProperties: false
                              - description: See [`NativeWithdraw`]
                                type: object
                                required:
                                  - amount
                                  - intent
                                  - receiver_id
                                properties:
                                  amount:
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - native_withdraw
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                additionalProperties: false
                              - description: See [`StorageDeposit`]
                                type: object
                                required:
                                  - amount
                                  - contract_id
                                  - deposit_for_account_id
                                  - intent
                                properties:
                                  amount:
                                    type: string
                                  contract_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  deposit_for_account_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - storage_deposit
                                additionalProperties: false
                              - description: See [`TokenDiff`]
                                type: object
                                required:
                                  - diff
                                  - intent
                                properties:
                                  diff:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  intent:
                                    type: string
                                    enum:
                                      - token_diff
                                  memo:
                                    type: string
                                    nullable: true
                                  referral:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                    nullable: true
                                additionalProperties: false
                              - description: See [`SetAuthByPredecessorId`]
                                type: object
                                required:
                                  - enabled
                                  - intent
                                properties:
                                  enabled:
                                    type: boolean
                                  intent:
                                    type: string
                                    enum:
                                      - set_auth_by_predecessor_id
                                additionalProperties: false
                              - description: See [`AuthCall`]
                                type: object
                                required:
                                  - contract_id
                                  - intent
                                  - msg
                                properties:
                                  attached_deposit:
                                    description: >-
                                      Optionally, attach deposit to
                                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                      call. The amount will be subtracted from
                                      user's NEP-141 `wNEAR` balance.


                                      NOTE: the `wNEAR` will not be refunded in
                                      case of fail.
                                    type: string
                                  contract_id:
                                    description: >-
                                      Callee for
                                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - auth_call
                                  min_gas:
                                    description: >-
                                      Optional minimum gas required for created
                                      promise to succeed. By default, only
                                      [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                      is required.


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      `msg` to pass in
                                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                    type: string
                                  state_init:
                                    description: >-
                                      Optionally initialize the receiver's
                                      contract (Deterministic AccountId) via
                                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                      right before calling
                                      [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                      (in the same receipt).
                                    anyOf:
                                      - oneOf:
                                          - type: object
                                            required:
                                              - code
                                              - data
                                              - version
                                            properties:
                                              code:
                                                oneOf:
                                                  - type: object
                                                    required:
                                                      - hash
                                                    properties:
                                                      hash:
                                                        type: string
                                                    additionalProperties: false
                                                  - type: object
                                                    required:
                                                      - account_id
                                                    properties:
                                                      account_id:
                                                        description: >-
                                                          NEAR Account Identifier.


                                                          This is a unique, syntactically valid,
                                                          human-readable account identifier on the
                                                          NEAR network.


                                                          [See the crate-level docs for
                                                          information about
                                                          validation.](index.html#account-id-rules)


                                                          Also see [Error kind
                                                          precedence](AccountId#error-kind-precedence).


                                                          ## Examples


                                                          ``` use near_account_id::AccountId;


                                                          let alice: AccountId =
                                                          "alice.near".parse().unwrap();


                                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                          // (ƒ is not f) ```
                                                        type: string
                                                    additionalProperties: false
                                              data:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              version:
                                                type: string
                                                enum:
                                                  - v1
                                            additionalProperties: false
                                        nullable: true
                                additionalProperties: false
                              - description: >-
                                  Mint a set of tokens from the signer to a
                                  specified account id, within the intents
                                  contract.
                                type: object
                                required:
                                  - intent
                                  - receiver_id
                                  - tokens
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - imt_mint
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Minimum gas for `mt_on_transfer()`


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: Message to pass to `mt_on_transfer`
                                    type: string
                                  receiver_id:
                                    description: Receiver of the minted tokens
                                    type: string
                                  state_init:
                                    description: >-
                                      Optionally initialize the receiver's
                                      contract (Deterministic AccountId) via
                                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                      right before calling `mt_on_transfer()`
                                      (in the same receipt).
                                    anyOf:
                                      - oneOf:
                                          - type: object
                                            required:
                                              - code
                                              - data
                                              - version
                                            properties:
                                              code:
                                                oneOf:
                                                  - type: object
                                                    required:
                                                      - hash
                                                    properties:
                                                      hash:
                                                        type: string
                                                    additionalProperties: false
                                                  - type: object
                                                    required:
                                                      - account_id
                                                    properties:
                                                      account_id:
                                                        description: >-
                                                          NEAR Account Identifier.


                                                          This is a unique, syntactically valid,
                                                          human-readable account identifier on the
                                                          NEAR network.


                                                          [See the crate-level docs for
                                                          information about
                                                          validation.](index.html#account-id-rules)


                                                          Also see [Error kind
                                                          precedence](AccountId#error-kind-precedence).


                                                          ## Examples


                                                          ``` use near_account_id::AccountId;


                                                          let alice: AccountId =
                                                          "alice.near".parse().unwrap();


                                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                          // (ƒ is not f) ```
                                                        type: string
                                                    additionalProperties: false
                                              data:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              version:
                                                type: string
                                                enum:
                                                  - v1
                                            additionalProperties: false
                                        nullable: true
                                  tokens:
                                    description: >-
                                      The token_ids will be wrapped to bind the
                                      token ID to the minter authority (i.e.
                                      signer of this intent). The final string
                                      representation of the token will be as
                                      follows: `imt:<minter_id>:<token_id>`
                                    type: object
                                    additionalProperties:
                                      type: string
                                additionalProperties: false
                              - description: >-
                                  Burn a set of imt tokens, within the intents
                                  contract.
                                type: object
                                required:
                                  - intent
                                  - minter_id
                                  - tokens
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - imt_burn
                                  memo:
                                    type: string
                                    nullable: true
                                  minter_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  tokens:
                                    description: >-
                                      The token_ids will be wrapped to bind the
                                      token ID to the minter authority. The
                                      final string representation of the token
                                      will be as follows:
                                      `imt:<minter_id>:<token_id>`
                                    type: object
                                    additionalProperties:
                                      type: string
                                additionalProperties: false
                nonce:
                  type: string
                  description: 'Encoding: base64'
                recipient:
                  type: string
              additionalProperties: false
            public_key:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            standard:
              type: string
              enum:
                - nep413
          additionalProperties: false
        - description: >-
            ERC-191: The standard for message signing in Ethereum, commonly used
            with `personal_sign()`. For more details, refer to
            [EIP-191](https://eips.ethereum.org/EIPS/eip-191).
          type: object
          required:
            - payload
            - signature
            - standard
          properties:
            payload:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
            signature:
              description: >-
                There is no public key member because the public key can be
                recovered via `ecrecover()` knowing the data and the signature.
                Encoding: base58
              type: string
              pattern: '^secp256k1:'
            standard:
              type: string
              enum:
                - erc191
          additionalProperties: false
        - description: >-
            TIP-191: The standard for message signing in Tron. For more details,
            refer to
            [TIP-191](https://github.com/tronprotocol/tips/blob/master/tip-191.md).
          type: object
          required:
            - payload
            - signature
            - standard
          properties:
            payload:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
            signature:
              description: >-
                There is no public key member because the public key can be
                recovered via `ecrecover()` knowing the data and the signature.
                Encoding: base58
              type: string
              pattern: '^secp256k1:'
            standard:
              type: string
              enum:
                - tip191
          additionalProperties: false
        - description: >-
            Raw Ed25519: The standard used by Solana Phantom wallets for message
            signing. For more details, refer to [Phantom Wallet's
            documentation](https://docs.phantom.com/solana/signing-a-message).
          type: object
          required:
            - payload
            - public_key
            - signature
            - standard
          properties:
            payload:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
            public_key:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            standard:
              type: string
              enum:
                - raw_ed25519
          additionalProperties: false
        - type: object
          required:
            - authenticator_data
            - client_data_json
            - payload
            - standard
            - public_key
            - signature
          properties:
            authenticator_data:
              description: >-
                Base64Url-encoded
                [authenticatorData](https://w3c.github.io/webauthn/#authenticator-data).
                Encoding: base64
              type: string
            client_data_json:
              description: >-
                Serialized
                [clientDataJSON](https://w3c.github.io/webauthn/#dom-authenticatorresponse-clientdatajson)
              type: string
            payload:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
            standard:
              type: string
              enum:
                - webauthn
            public_key:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
          description: >-
            [COSE EdDSA (-8)
            algorithm](https://www.iana.org/assignments/cose/cose.xhtml#algorithms):
            ed25519 curve
          additionalProperties: false
        - type: object
          required:
            - authenticator_data
            - client_data_json
            - payload
            - standard
            - public_key
            - signature
          properties:
            authenticator_data:
              description: >-
                Base64Url-encoded
                [authenticatorData](https://w3c.github.io/webauthn/#authenticator-data).
                Encoding: base64
              type: string
            client_data_json:
              description: >-
                Serialized
                [clientDataJSON](https://w3c.github.io/webauthn/#dom-authenticatorresponse-clientdatajson)
              type: string
            payload:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
            standard:
              type: string
              enum:
                - webauthn
            public_key:
              type: string
              pattern: '^p256:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^p256:'
              description: 'Encoding: base58'
          description: >-
            [COSE ES256 (-7)
            algorithm](https://www.iana.org/assignments/cose/cose.xhtml#algorithms):
            NIST P-256 curve (a.k.a secp256r1) over SHA-256
          additionalProperties: false
        - description: >-
            TonConnect: The standard for data signing in TON blockchain
            platform. For more details, refer to [TonConnect
            documentation](https://docs.tonconsole.com/academy/sign-data).
          type: object
          required:
            - address
            - domain
            - payload
            - public_key
            - signature
            - standard
            - timestamp
          properties:
            address:
              description: >-
                Wallet address in either
                [Raw](https://docs.ton.org/v3/documentation/smart-contracts/addresses/address-formats#raw-address)
                representation or
                [user-friendly](https://docs.ton.org/v3/documentation/smart-contracts/addresses/address-formats#user-friendly-address)
                format
              allOf:
                - type: string
            domain:
              description: dApp domain
              type: string
            payload:
              oneOf:
                - type: object
                  required:
                    - text
                    - type
                  properties:
                    text:
                      type: object
                      required:
                        - original
                        - parsed
                      additionalProperties: false
                      properties:
                        original:
                          type: string
                        parsed:
                          type: object
                          required:
                            - deadline
                            - nonce
                            - signer_id
                            - verifying_contract
                          properties:
                            deadline:
                              type: string
                            intents:
                              description: >-
                                Sequence of intents to execute in given order.
                                Empty list is also a valid sequence, i.e. it
                                doesn't do anything, but still invalidates the
                                `nonce` for the signer WARNING: Promises created
                                by different intents are executed concurrently
                                and does not rely on the order of the intents in
                                this structure
                              type: array
                              items:
                                oneOf:
                                  - description: See [`AddPublicKey`]
                                    type: object
                                    required:
                                      - intent
                                      - public_key
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - add_public_key
                                      public_key:
                                        type: string
                                        description: 'Encoding: base58'
                                        example: >-
                                          ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                    additionalProperties: false
                                  - description: See [`RemovePublicKey`]
                                    type: object
                                    required:
                                      - intent
                                      - public_key
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - remove_public_key
                                      public_key:
                                        type: string
                                        description: 'Encoding: base58'
                                        example: >-
                                          ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                    additionalProperties: false
                                  - description: See [`Transfer`]
                                    type: object
                                    required:
                                      - intent
                                      - receiver_id
                                      - tokens
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - transfer
                                      memo:
                                        type: string
                                        nullable: true
                                      min_gas:
                                        description: >-
                                          Minimum gas for `mt_on_transfer()`


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: Message to pass to `mt_on_transfer`
                                        type: string
                                      receiver_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      state_init:
                                        description: >-
                                          Optionally initialize the receiver's
                                          contract (Deterministic AccountId) via
                                          [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                          right before calling `mt_on_transfer()`
                                          (in the same receipt).
                                        anyOf:
                                          - oneOf:
                                              - type: object
                                                required:
                                                  - code
                                                  - data
                                                  - version
                                                properties:
                                                  code:
                                                    oneOf:
                                                      - type: object
                                                        required:
                                                          - hash
                                                        properties:
                                                          hash:
                                                            type: string
                                                        additionalProperties: false
                                                      - type: object
                                                        required:
                                                          - account_id
                                                        properties:
                                                          account_id:
                                                            description: >-
                                                              NEAR Account Identifier.


                                                              This is a unique, syntactically valid,
                                                              human-readable account identifier on the
                                                              NEAR network.


                                                              [See the crate-level docs for
                                                              information about
                                                              validation.](index.html#account-id-rules)


                                                              Also see [Error kind
                                                              precedence](AccountId#error-kind-precedence).


                                                              ## Examples


                                                              ``` use near_account_id::AccountId;


                                                              let alice: AccountId =
                                                              "alice.near".parse().unwrap();


                                                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                              // (ƒ is not f) ```
                                                            type: string
                                                        additionalProperties: false
                                                  data:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  version:
                                                    type: string
                                                    enum:
                                                      - v1
                                                additionalProperties: false
                                            nullable: true
                                      tokens:
                                        type: object
                                        additionalProperties:
                                          type: string
                                    additionalProperties: false
                                  - description: See [`FtWithdraw`]
                                    type: object
                                    required:
                                      - amount
                                      - intent
                                      - receiver_id
                                      - token
                                    properties:
                                      amount:
                                        type: string
                                      intent:
                                        type: string
                                        enum:
                                          - ft_withdraw
                                      memo:
                                        type: string
                                        nullable: true
                                      min_gas:
                                        description: >-
                                          Optional minimum required Near gas for
                                          created Promise to succeed: *
                                          `ft_transfer`:      minimum: 15TGas,
                                          default: 15TGas * `ft_transfer_call`:
                                          minimum: 30TGas, default: 50TGas


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: >-
                                          Message to pass to `ft_transfer_call`.
                                          Otherwise, `ft_transfer` will be used.
                                          NOTE: No refund will be made in case of
                                          insufficient `storage_deposit` on
                                          `token` for `receiver_id`
                                        type: string
                                        nullable: true
                                      receiver_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      storage_deposit:
                                        description: >-
                                          Optionally make `storage_deposit` for
                                          `receiver_id` on `token`. The amount
                                          will be subtracted from user's NEP-141
                                          `wNEAR` balance. NOTE: the `wNEAR` will
                                          not be refunded in case of fail
                                        type: string
                                        nullable: true
                                      token:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                                  - description: See [`NftWithdraw`]
                                    type: object
                                    required:
                                      - intent
                                      - receiver_id
                                      - token
                                      - token_id
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - nft_withdraw
                                      memo:
                                        type: string
                                        nullable: true
                                      min_gas:
                                        description: >-
                                          Optional minimum required Near gas for
                                          created Promise to succeed: *
                                          `nft_transfer`:      minimum: 15TGas,
                                          default: 15TGas * `nft_transfer_call`:
                                          minimum: 30TGas, default: 50TGas


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: >-
                                          Message to pass to `nft_transfer_call`.
                                          Otherwise, `nft_transfer` will be used.
                                          NOTE: No refund will be made in case of
                                          insufficient `storage_deposit` on
                                          `token` for `receiver_id`
                                        type: string
                                        nullable: true
                                      receiver_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      storage_deposit:
                                        description: >-
                                          Optionally make `storage_deposit` for
                                          `receiver_id` on `token`. The amount
                                          will be subtracted from user's NEP-141
                                          `wNEAR` balance. NOTE: the `wNEAR` will
                                          not be refunded in case of fail
                                        type: string
                                        nullable: true
                                      token:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      token_id:
                                        type: string
                                    additionalProperties: false
                                  - description: See [`MtWithdraw`]
                                    type: object
                                    required:
                                      - amounts
                                      - intent
                                      - receiver_id
                                      - token
                                      - token_ids
                                    properties:
                                      amounts:
                                        type: array
                                        items:
                                          type: string
                                      intent:
                                        type: string
                                        enum:
                                          - mt_withdraw
                                      memo:
                                        type: string
                                        nullable: true
                                      min_gas:
                                        description: >-
                                          Optional minimum required Near gas for
                                          created Promise to succeed per token: *
                                          `mt_batch_transfer`:      minimum:
                                          20TGas, default: 20TGas *
                                          `mt_batch_transfer_call`: minimum:
                                          35TGas, default: 50TGas


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: >-
                                          Message to pass to
                                          `mt_batch_transfer_call`. Otherwise,
                                          `mt_batch_transfer` will be used. NOTE:
                                          No refund will be made in case of
                                          insufficient `storage_deposit` on
                                          `token` for `receiver_id`
                                        type: string
                                        nullable: true
                                      receiver_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      storage_deposit:
                                        description: >-
                                          Optionally make `storage_deposit` for
                                          `receiver_id` on `token`. The amount
                                          will be subtracted from user's NEP-141
                                          `wNEAR` balance. NOTE: the `wNEAR` will
                                          not be refunded in case of fail
                                        type: string
                                        nullable: true
                                      token:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      token_ids:
                                        type: array
                                        items:
                                          type: string
                                    additionalProperties: false
                                  - description: See [`NativeWithdraw`]
                                    type: object
                                    required:
                                      - amount
                                      - intent
                                      - receiver_id
                                    properties:
                                      amount:
                                        type: string
                                      intent:
                                        type: string
                                        enum:
                                          - native_withdraw
                                      receiver_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                                  - description: See [`StorageDeposit`]
                                    type: object
                                    required:
                                      - amount
                                      - contract_id
                                      - deposit_for_account_id
                                      - intent
                                    properties:
                                      amount:
                                        type: string
                                      contract_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      deposit_for_account_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      intent:
                                        type: string
                                        enum:
                                          - storage_deposit
                                    additionalProperties: false
                                  - description: See [`TokenDiff`]
                                    type: object
                                    required:
                                      - diff
                                      - intent
                                    properties:
                                      diff:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      intent:
                                        type: string
                                        enum:
                                          - token_diff
                                      memo:
                                        type: string
                                        nullable: true
                                      referral:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                        nullable: true
                                    additionalProperties: false
                                  - description: See [`SetAuthByPredecessorId`]
                                    type: object
                                    required:
                                      - enabled
                                      - intent
                                    properties:
                                      enabled:
                                        type: boolean
                                      intent:
                                        type: string
                                        enum:
                                          - set_auth_by_predecessor_id
                                    additionalProperties: false
                                  - description: See [`AuthCall`]
                                    type: object
                                    required:
                                      - contract_id
                                      - intent
                                      - msg
                                    properties:
                                      attached_deposit:
                                        description: >-
                                          Optionally, attach deposit to
                                          [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                          call. The amount will be subtracted from
                                          user's NEP-141 `wNEAR` balance.


                                          NOTE: the `wNEAR` will not be refunded
                                          in case of fail.
                                        type: string
                                      contract_id:
                                        description: >-
                                          Callee for
                                          [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                        type: string
                                      intent:
                                        type: string
                                        enum:
                                          - auth_call
                                      min_gas:
                                        description: >-
                                          Optional minimum gas required for
                                          created promise to succeed. By default,
                                          only
                                          [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                          is required.


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: >-
                                          `msg` to pass in
                                          [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                        type: string
                                      state_init:
                                        description: >-
                                          Optionally initialize the receiver's
                                          contract (Deterministic AccountId) via
                                          [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                          right before calling
                                          [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                          (in the same receipt).
                                        anyOf:
                                          - oneOf:
                                              - type: object
                                                required:
                                                  - code
                                                  - data
                                                  - version
                                                properties:
                                                  code:
                                                    oneOf:
                                                      - type: object
                                                        required:
                                                          - hash
                                                        properties:
                                                          hash:
                                                            type: string
                                                        additionalProperties: false
                                                      - type: object
                                                        required:
                                                          - account_id
                                                        properties:
                                                          account_id:
                                                            description: >-
                                                              NEAR Account Identifier.


                                                              This is a unique, syntactically valid,
                                                              human-readable account identifier on the
                                                              NEAR network.


                                                              [See the crate-level docs for
                                                              information about
                                                              validation.](index.html#account-id-rules)


                                                              Also see [Error kind
                                                              precedence](AccountId#error-kind-precedence).


                                                              ## Examples


                                                              ``` use near_account_id::AccountId;


                                                              let alice: AccountId =
                                                              "alice.near".parse().unwrap();


                                                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                              // (ƒ is not f) ```
                                                            type: string
                                                        additionalProperties: false
                                                  data:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  version:
                                                    type: string
                                                    enum:
                                                      - v1
                                                additionalProperties: false
                                            nullable: true
                                    additionalProperties: false
                                  - description: >-
                                      Mint a set of tokens from the signer to a
                                      specified account id, within the intents
                                      contract.
                                    type: object
                                    required:
                                      - intent
                                      - receiver_id
                                      - tokens
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - imt_mint
                                      memo:
                                        type: string
                                        nullable: true
                                      min_gas:
                                        description: >-
                                          Minimum gas for `mt_on_transfer()`


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: Message to pass to `mt_on_transfer`
                                        type: string
                                      receiver_id:
                                        description: Receiver of the minted tokens
                                        type: string
                                      state_init:
                                        description: >-
                                          Optionally initialize the receiver's
                                          contract (Deterministic AccountId) via
                                          [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                          right before calling `mt_on_transfer()`
                                          (in the same receipt).
                                        anyOf:
                                          - oneOf:
                                              - type: object
                                                required:
                                                  - code
                                                  - data
                                                  - version
                                                properties:
                                                  code:
                                                    oneOf:
                                                      - type: object
                                                        required:
                                                          - hash
                                                        properties:
                                                          hash:
                                                            type: string
                                                        additionalProperties: false
                                                      - type: object
                                                        required:
                                                          - account_id
                                                        properties:
                                                          account_id:
                                                            description: >-
                                                              NEAR Account Identifier.


                                                              This is a unique, syntactically valid,
                                                              human-readable account identifier on the
                                                              NEAR network.


                                                              [See the crate-level docs for
                                                              information about
                                                              validation.](index.html#account-id-rules)


                                                              Also see [Error kind
                                                              precedence](AccountId#error-kind-precedence).


                                                              ## Examples


                                                              ``` use near_account_id::AccountId;


                                                              let alice: AccountId =
                                                              "alice.near".parse().unwrap();


                                                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                              // (ƒ is not f) ```
                                                            type: string
                                                        additionalProperties: false
                                                  data:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  version:
                                                    type: string
                                                    enum:
                                                      - v1
                                                additionalProperties: false
                                            nullable: true
                                      tokens:
                                        description: >-
                                          The token_ids will be wrapped to bind
                                          the token ID to the minter authority
                                          (i.e. signer of this intent). The final
                                          string representation of the token will
                                          be as follows:
                                          `imt:<minter_id>:<token_id>`
                                        type: object
                                        additionalProperties:
                                          type: string
                                    additionalProperties: false
                                  - description: >-
                                      Burn a set of imt tokens, within the
                                      intents contract.
                                    type: object
                                    required:
                                      - intent
                                      - minter_id
                                      - tokens
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - imt_burn
                                      memo:
                                        type: string
                                        nullable: true
                                      minter_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      tokens:
                                        description: >-
                                          The token_ids will be wrapped to bind
                                          the token ID to the minter authority.
                                          The final string representation of the
                                          token will be as follows:
                                          `imt:<minter_id>:<token_id>`
                                        type: object
                                        additionalProperties:
                                          type: string
                                    additionalProperties: false
                            nonce:
                              type: string
                              description: 'Encoding: base64'
                              example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                            signer_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            verifying_contract:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                    type:
                      type: string
                      enum:
                        - text
                  additionalProperties: false
            public_key:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            standard:
              type: string
              enum:
                - ton_connect
            timestamp:
              description: UNIX timestamp (in seconds or RFC3339) at the time of singing
              allOf:
                - anyOf:
                    - type: string
                      format: date-time
                    - writeOnly: true
                      allOf:
                        - type: integer
                          format: int64
          additionalProperties: false
        - description: >-
            SEP-53: The standard for signing data off-chain for Stellar
            accounts. See
            [SEP-53](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0053.md)
          type: object
          required:
            - payload
            - public_key
            - signature
            - standard
          properties:
            payload:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
            public_key:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            signature:
              type: string
              pattern: '^ed25519:'
              description: 'Encoding: base58'
            standard:
              type: string
              enum:
                - sep53
          additionalProperties: false
    MultiPayloadNarrowed__Parsed:
      oneOf:
        - type: object
          required:
            - standard
            - payload
          additionalProperties: false
          properties:
            standard:
              type: string
              enum:
                - nep413
            payload:
              description: >-
                See
                [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md)
              type: object
              required:
                - message
                - nonce
                - recipient
              properties:
                callbackUrl:
                  type: string
                  nullable: true
                message:
                  type: object
                  required:
                    - original
                    - parsed
                  additionalProperties: false
                  properties:
                    original:
                      type: string
                    parsed:
                      type: object
                      required:
                        - deadline
                        - signer_id
                      properties:
                        deadline:
                          type: string
                        signer_id:
                          description: >-
                            NEAR Account Identifier.


                            This is a unique, syntactically valid,
                            human-readable account identifier on the NEAR
                            network.


                            [See the crate-level docs for information about
                            validation.](index.html#account-id-rules)


                            Also see [Error kind
                            precedence](AccountId#error-kind-precedence).


                            ## Examples


                            ``` use near_account_id::AccountId;


                            let alice: AccountId =
                            "alice.near".parse().unwrap();


                            assert!("ƒelicia.near".parse::<AccountId>().is_err());
                            // (ƒ is not f) ```
                          type: string
                        intents:
                          description: >-
                            Sequence of intents to execute in given order. Empty
                            list is also a valid sequence, i.e. it doesn't do
                            anything, but still invalidates the `nonce` for the
                            signer WARNING: Promises created by different
                            intents are executed concurrently and does not rely
                            on the order of the intents in this structure
                          type: array
                          items:
                            oneOf:
                              - description: See [`AddPublicKey`]
                                type: object
                                required:
                                  - intent
                                  - public_key
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - add_public_key
                                  public_key:
                                    type: string
                                    description: 'Encoding: base58'
                                    example: >-
                                      ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                additionalProperties: false
                              - description: See [`RemovePublicKey`]
                                type: object
                                required:
                                  - intent
                                  - public_key
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - remove_public_key
                                  public_key:
                                    type: string
                                    description: 'Encoding: base58'
                                    example: >-
                                      ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                additionalProperties: false
                              - description: See [`Transfer`]
                                type: object
                                required:
                                  - intent
                                  - receiver_id
                                  - tokens
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - transfer
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Minimum gas for `mt_on_transfer()`


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: Message to pass to `mt_on_transfer`
                                    type: string
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  state_init:
                                    description: >-
                                      Optionally initialize the receiver's
                                      contract (Deterministic AccountId) via
                                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                      right before calling `mt_on_transfer()`
                                      (in the same receipt).
                                    anyOf:
                                      - oneOf:
                                          - type: object
                                            required:
                                              - code
                                              - data
                                              - version
                                            properties:
                                              code:
                                                oneOf:
                                                  - type: object
                                                    required:
                                                      - hash
                                                    properties:
                                                      hash:
                                                        type: string
                                                    additionalProperties: false
                                                  - type: object
                                                    required:
                                                      - account_id
                                                    properties:
                                                      account_id:
                                                        description: >-
                                                          NEAR Account Identifier.


                                                          This is a unique, syntactically valid,
                                                          human-readable account identifier on the
                                                          NEAR network.


                                                          [See the crate-level docs for
                                                          information about
                                                          validation.](index.html#account-id-rules)


                                                          Also see [Error kind
                                                          precedence](AccountId#error-kind-precedence).


                                                          ## Examples


                                                          ``` use near_account_id::AccountId;


                                                          let alice: AccountId =
                                                          "alice.near".parse().unwrap();


                                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                          // (ƒ is not f) ```
                                                        type: string
                                                    additionalProperties: false
                                              data:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              version:
                                                type: string
                                                enum:
                                                  - v1
                                            additionalProperties: false
                                        nullable: true
                                  tokens:
                                    type: object
                                    additionalProperties:
                                      type: string
                                additionalProperties: false
                              - description: See [`FtWithdraw`]
                                type: object
                                required:
                                  - amount
                                  - intent
                                  - receiver_id
                                  - token
                                properties:
                                  amount:
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - ft_withdraw
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Optional minimum required Near gas for
                                      created Promise to succeed: *
                                      `ft_transfer`:      minimum: 15TGas,
                                      default: 15TGas * `ft_transfer_call`:
                                      minimum: 30TGas, default: 50TGas


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      Message to pass to `ft_transfer_call`.
                                      Otherwise, `ft_transfer` will be used.
                                      NOTE: No refund will be made in case of
                                      insufficient `storage_deposit` on `token`
                                      for `receiver_id`
                                    type: string
                                    nullable: true
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  storage_deposit:
                                    description: >-
                                      Optionally make `storage_deposit` for
                                      `receiver_id` on `token`. The amount will
                                      be subtracted from user's NEP-141 `wNEAR`
                                      balance. NOTE: the `wNEAR` will not be
                                      refunded in case of fail
                                    type: string
                                    nullable: true
                                  token:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                additionalProperties: false
                              - description: See [`NftWithdraw`]
                                type: object
                                required:
                                  - intent
                                  - receiver_id
                                  - token
                                  - token_id
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - nft_withdraw
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Optional minimum required Near gas for
                                      created Promise to succeed: *
                                      `nft_transfer`:      minimum: 15TGas,
                                      default: 15TGas * `nft_transfer_call`:
                                      minimum: 30TGas, default: 50TGas


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      Message to pass to `nft_transfer_call`.
                                      Otherwise, `nft_transfer` will be used.
                                      NOTE: No refund will be made in case of
                                      insufficient `storage_deposit` on `token`
                                      for `receiver_id`
                                    type: string
                                    nullable: true
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  storage_deposit:
                                    description: >-
                                      Optionally make `storage_deposit` for
                                      `receiver_id` on `token`. The amount will
                                      be subtracted from user's NEP-141 `wNEAR`
                                      balance. NOTE: the `wNEAR` will not be
                                      refunded in case of fail
                                    type: string
                                    nullable: true
                                  token:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  token_id:
                                    type: string
                                additionalProperties: false
                              - description: See [`MtWithdraw`]
                                type: object
                                required:
                                  - amounts
                                  - intent
                                  - receiver_id
                                  - token
                                  - token_ids
                                properties:
                                  amounts:
                                    type: array
                                    items:
                                      type: string
                                  intent:
                                    type: string
                                    enum:
                                      - mt_withdraw
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Optional minimum required Near gas for
                                      created Promise to succeed per token: *
                                      `mt_batch_transfer`:      minimum: 20TGas,
                                      default: 20TGas *
                                      `mt_batch_transfer_call`: minimum: 35TGas,
                                      default: 50TGas


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      Message to pass to
                                      `mt_batch_transfer_call`. Otherwise,
                                      `mt_batch_transfer` will be used. NOTE: No
                                      refund will be made in case of
                                      insufficient `storage_deposit` on `token`
                                      for `receiver_id`
                                    type: string
                                    nullable: true
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  storage_deposit:
                                    description: >-
                                      Optionally make `storage_deposit` for
                                      `receiver_id` on `token`. The amount will
                                      be subtracted from user's NEP-141 `wNEAR`
                                      balance. NOTE: the `wNEAR` will not be
                                      refunded in case of fail
                                    type: string
                                    nullable: true
                                  token:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  token_ids:
                                    type: array
                                    items:
                                      type: string
                                additionalProperties: false
                              - description: See [`NativeWithdraw`]
                                type: object
                                required:
                                  - amount
                                  - intent
                                  - receiver_id
                                properties:
                                  amount:
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - native_withdraw
                                  receiver_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                additionalProperties: false
                              - description: See [`StorageDeposit`]
                                type: object
                                required:
                                  - amount
                                  - contract_id
                                  - deposit_for_account_id
                                  - intent
                                properties:
                                  amount:
                                    type: string
                                  contract_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  deposit_for_account_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - storage_deposit
                                additionalProperties: false
                              - description: See [`TokenDiff`]
                                type: object
                                required:
                                  - diff
                                  - intent
                                properties:
                                  diff:
                                    type: object
                                    additionalProperties:
                                      type: string
                                  intent:
                                    type: string
                                    enum:
                                      - token_diff
                                  memo:
                                    type: string
                                    nullable: true
                                  referral:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                    nullable: true
                                additionalProperties: false
                              - description: See [`SetAuthByPredecessorId`]
                                type: object
                                required:
                                  - enabled
                                  - intent
                                properties:
                                  enabled:
                                    type: boolean
                                  intent:
                                    type: string
                                    enum:
                                      - set_auth_by_predecessor_id
                                additionalProperties: false
                              - description: See [`AuthCall`]
                                type: object
                                required:
                                  - contract_id
                                  - intent
                                  - msg
                                properties:
                                  attached_deposit:
                                    description: >-
                                      Optionally, attach deposit to
                                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                      call. The amount will be subtracted from
                                      user's NEP-141 `wNEAR` balance.


                                      NOTE: the `wNEAR` will not be refunded in
                                      case of fail.
                                    type: string
                                  contract_id:
                                    description: >-
                                      Callee for
                                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                    type: string
                                  intent:
                                    type: string
                                    enum:
                                      - auth_call
                                  min_gas:
                                    description: >-
                                      Optional minimum gas required for created
                                      promise to succeed. By default, only
                                      [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                      is required.


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: >-
                                      `msg` to pass in
                                      [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                    type: string
                                  state_init:
                                    description: >-
                                      Optionally initialize the receiver's
                                      contract (Deterministic AccountId) via
                                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                      right before calling
                                      [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                      (in the same receipt).
                                    anyOf:
                                      - oneOf:
                                          - type: object
                                            required:
                                              - code
                                              - data
                                              - version
                                            properties:
                                              code:
                                                oneOf:
                                                  - type: object
                                                    required:
                                                      - hash
                                                    properties:
                                                      hash:
                                                        type: string
                                                    additionalProperties: false
                                                  - type: object
                                                    required:
                                                      - account_id
                                                    properties:
                                                      account_id:
                                                        description: >-
                                                          NEAR Account Identifier.


                                                          This is a unique, syntactically valid,
                                                          human-readable account identifier on the
                                                          NEAR network.


                                                          [See the crate-level docs for
                                                          information about
                                                          validation.](index.html#account-id-rules)


                                                          Also see [Error kind
                                                          precedence](AccountId#error-kind-precedence).


                                                          ## Examples


                                                          ``` use near_account_id::AccountId;


                                                          let alice: AccountId =
                                                          "alice.near".parse().unwrap();


                                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                          // (ƒ is not f) ```
                                                        type: string
                                                    additionalProperties: false
                                              data:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              version:
                                                type: string
                                                enum:
                                                  - v1
                                            additionalProperties: false
                                        nullable: true
                                additionalProperties: false
                              - description: >-
                                  Mint a set of tokens from the signer to a
                                  specified account id, within the intents
                                  contract.
                                type: object
                                required:
                                  - intent
                                  - receiver_id
                                  - tokens
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - imt_mint
                                  memo:
                                    type: string
                                    nullable: true
                                  min_gas:
                                    description: >-
                                      Minimum gas for `mt_on_transfer()`


                                      Remaining gas will be distributed evenly
                                      across all Function Call Promises created
                                      during execution of current receipt.
                                    type: string
                                    nullable: true
                                  msg:
                                    description: Message to pass to `mt_on_transfer`
                                    type: string
                                  receiver_id:
                                    description: Receiver of the minted tokens
                                    type: string
                                  state_init:
                                    description: >-
                                      Optionally initialize the receiver's
                                      contract (Deterministic AccountId) via
                                      [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                      right before calling `mt_on_transfer()`
                                      (in the same receipt).
                                    anyOf:
                                      - oneOf:
                                          - type: object
                                            required:
                                              - code
                                              - data
                                              - version
                                            properties:
                                              code:
                                                oneOf:
                                                  - type: object
                                                    required:
                                                      - hash
                                                    properties:
                                                      hash:
                                                        type: string
                                                    additionalProperties: false
                                                  - type: object
                                                    required:
                                                      - account_id
                                                    properties:
                                                      account_id:
                                                        description: >-
                                                          NEAR Account Identifier.


                                                          This is a unique, syntactically valid,
                                                          human-readable account identifier on the
                                                          NEAR network.


                                                          [See the crate-level docs for
                                                          information about
                                                          validation.](index.html#account-id-rules)


                                                          Also see [Error kind
                                                          precedence](AccountId#error-kind-precedence).


                                                          ## Examples


                                                          ``` use near_account_id::AccountId;


                                                          let alice: AccountId =
                                                          "alice.near".parse().unwrap();


                                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                          // (ƒ is not f) ```
                                                        type: string
                                                    additionalProperties: false
                                              data:
                                                type: object
                                                additionalProperties:
                                                  type: string
                                              version:
                                                type: string
                                                enum:
                                                  - v1
                                            additionalProperties: false
                                        nullable: true
                                  tokens:
                                    description: >-
                                      The token_ids will be wrapped to bind the
                                      token ID to the minter authority (i.e.
                                      signer of this intent). The final string
                                      representation of the token will be as
                                      follows: `imt:<minter_id>:<token_id>`
                                    type: object
                                    additionalProperties:
                                      type: string
                                additionalProperties: false
                              - description: >-
                                  Burn a set of imt tokens, within the intents
                                  contract.
                                type: object
                                required:
                                  - intent
                                  - minter_id
                                  - tokens
                                properties:
                                  intent:
                                    type: string
                                    enum:
                                      - imt_burn
                                  memo:
                                    type: string
                                    nullable: true
                                  minter_id:
                                    description: >-
                                      NEAR Account Identifier.


                                      This is a unique, syntactically valid,
                                      human-readable account identifier on the
                                      NEAR network.


                                      [See the crate-level docs for information
                                      about
                                      validation.](index.html#account-id-rules)


                                      Also see [Error kind
                                      precedence](AccountId#error-kind-precedence).


                                      ## Examples


                                      ``` use near_account_id::AccountId;


                                      let alice: AccountId =
                                      "alice.near".parse().unwrap();


                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                      // (ƒ is not f) ```
                                    type: string
                                  tokens:
                                    description: >-
                                      The token_ids will be wrapped to bind the
                                      token ID to the minter authority. The
                                      final string representation of the token
                                      will be as follows:
                                      `imt:<minter_id>:<token_id>`
                                    type: object
                                    additionalProperties:
                                      type: string
                                additionalProperties: false
                nonce:
                  type: string
                  description: 'Encoding: base64'
                recipient:
                  type: string
              additionalProperties: false
        - type: object
          required:
            - standard
            - payload
          additionalProperties: false
          properties:
            standard:
              type: string
              enum:
                - erc191
            payload:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
        - type: object
          required:
            - standard
            - payload
          additionalProperties: false
          properties:
            standard:
              type: string
              enum:
                - tip191
            payload:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
        - type: object
          required:
            - standard
            - payload
          additionalProperties: false
          properties:
            standard:
              type: string
              enum:
                - raw_ed25519
            payload:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
        - type: object
          required:
            - standard
            - payload
          additionalProperties: false
          properties:
            standard:
              type: string
              enum:
                - webauthn
            payload:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
        - type: object
          required:
            - standard
            - payload
          additionalProperties: false
          properties:
            standard:
              type: string
              enum:
                - ton_connect
            payload:
              oneOf:
                - type: object
                  required:
                    - text
                    - type
                  properties:
                    text:
                      type: object
                      required:
                        - original
                        - parsed
                      additionalProperties: false
                      properties:
                        original:
                          type: string
                        parsed:
                          type: object
                          required:
                            - deadline
                            - nonce
                            - signer_id
                            - verifying_contract
                          properties:
                            deadline:
                              type: string
                            intents:
                              description: >-
                                Sequence of intents to execute in given order.
                                Empty list is also a valid sequence, i.e. it
                                doesn't do anything, but still invalidates the
                                `nonce` for the signer WARNING: Promises created
                                by different intents are executed concurrently
                                and does not rely on the order of the intents in
                                this structure
                              type: array
                              items:
                                oneOf:
                                  - description: See [`AddPublicKey`]
                                    type: object
                                    required:
                                      - intent
                                      - public_key
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - add_public_key
                                      public_key:
                                        type: string
                                        description: 'Encoding: base58'
                                        example: >-
                                          ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                    additionalProperties: false
                                  - description: See [`RemovePublicKey`]
                                    type: object
                                    required:
                                      - intent
                                      - public_key
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - remove_public_key
                                      public_key:
                                        type: string
                                        description: 'Encoding: base58'
                                        example: >-
                                          ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                                    additionalProperties: false
                                  - description: See [`Transfer`]
                                    type: object
                                    required:
                                      - intent
                                      - receiver_id
                                      - tokens
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - transfer
                                      memo:
                                        type: string
                                        nullable: true
                                      min_gas:
                                        description: >-
                                          Minimum gas for `mt_on_transfer()`


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: Message to pass to `mt_on_transfer`
                                        type: string
                                      receiver_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      state_init:
                                        description: >-
                                          Optionally initialize the receiver's
                                          contract (Deterministic AccountId) via
                                          [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                          right before calling `mt_on_transfer()`
                                          (in the same receipt).
                                        anyOf:
                                          - oneOf:
                                              - type: object
                                                required:
                                                  - code
                                                  - data
                                                  - version
                                                properties:
                                                  code:
                                                    oneOf:
                                                      - type: object
                                                        required:
                                                          - hash
                                                        properties:
                                                          hash:
                                                            type: string
                                                        additionalProperties: false
                                                      - type: object
                                                        required:
                                                          - account_id
                                                        properties:
                                                          account_id:
                                                            description: >-
                                                              NEAR Account Identifier.


                                                              This is a unique, syntactically valid,
                                                              human-readable account identifier on the
                                                              NEAR network.


                                                              [See the crate-level docs for
                                                              information about
                                                              validation.](index.html#account-id-rules)


                                                              Also see [Error kind
                                                              precedence](AccountId#error-kind-precedence).


                                                              ## Examples


                                                              ``` use near_account_id::AccountId;


                                                              let alice: AccountId =
                                                              "alice.near".parse().unwrap();


                                                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                              // (ƒ is not f) ```
                                                            type: string
                                                        additionalProperties: false
                                                  data:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  version:
                                                    type: string
                                                    enum:
                                                      - v1
                                                additionalProperties: false
                                            nullable: true
                                      tokens:
                                        type: object
                                        additionalProperties:
                                          type: string
                                    additionalProperties: false
                                  - description: See [`FtWithdraw`]
                                    type: object
                                    required:
                                      - amount
                                      - intent
                                      - receiver_id
                                      - token
                                    properties:
                                      amount:
                                        type: string
                                      intent:
                                        type: string
                                        enum:
                                          - ft_withdraw
                                      memo:
                                        type: string
                                        nullable: true
                                      min_gas:
                                        description: >-
                                          Optional minimum required Near gas for
                                          created Promise to succeed: *
                                          `ft_transfer`:      minimum: 15TGas,
                                          default: 15TGas * `ft_transfer_call`:
                                          minimum: 30TGas, default: 50TGas


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: >-
                                          Message to pass to `ft_transfer_call`.
                                          Otherwise, `ft_transfer` will be used.
                                          NOTE: No refund will be made in case of
                                          insufficient `storage_deposit` on
                                          `token` for `receiver_id`
                                        type: string
                                        nullable: true
                                      receiver_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      storage_deposit:
                                        description: >-
                                          Optionally make `storage_deposit` for
                                          `receiver_id` on `token`. The amount
                                          will be subtracted from user's NEP-141
                                          `wNEAR` balance. NOTE: the `wNEAR` will
                                          not be refunded in case of fail
                                        type: string
                                        nullable: true
                                      token:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                                  - description: See [`NftWithdraw`]
                                    type: object
                                    required:
                                      - intent
                                      - receiver_id
                                      - token
                                      - token_id
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - nft_withdraw
                                      memo:
                                        type: string
                                        nullable: true
                                      min_gas:
                                        description: >-
                                          Optional minimum required Near gas for
                                          created Promise to succeed: *
                                          `nft_transfer`:      minimum: 15TGas,
                                          default: 15TGas * `nft_transfer_call`:
                                          minimum: 30TGas, default: 50TGas


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: >-
                                          Message to pass to `nft_transfer_call`.
                                          Otherwise, `nft_transfer` will be used.
                                          NOTE: No refund will be made in case of
                                          insufficient `storage_deposit` on
                                          `token` for `receiver_id`
                                        type: string
                                        nullable: true
                                      receiver_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      storage_deposit:
                                        description: >-
                                          Optionally make `storage_deposit` for
                                          `receiver_id` on `token`. The amount
                                          will be subtracted from user's NEP-141
                                          `wNEAR` balance. NOTE: the `wNEAR` will
                                          not be refunded in case of fail
                                        type: string
                                        nullable: true
                                      token:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      token_id:
                                        type: string
                                    additionalProperties: false
                                  - description: See [`MtWithdraw`]
                                    type: object
                                    required:
                                      - amounts
                                      - intent
                                      - receiver_id
                                      - token
                                      - token_ids
                                    properties:
                                      amounts:
                                        type: array
                                        items:
                                          type: string
                                      intent:
                                        type: string
                                        enum:
                                          - mt_withdraw
                                      memo:
                                        type: string
                                        nullable: true
                                      min_gas:
                                        description: >-
                                          Optional minimum required Near gas for
                                          created Promise to succeed per token: *
                                          `mt_batch_transfer`:      minimum:
                                          20TGas, default: 20TGas *
                                          `mt_batch_transfer_call`: minimum:
                                          35TGas, default: 50TGas


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: >-
                                          Message to pass to
                                          `mt_batch_transfer_call`. Otherwise,
                                          `mt_batch_transfer` will be used. NOTE:
                                          No refund will be made in case of
                                          insufficient `storage_deposit` on
                                          `token` for `receiver_id`
                                        type: string
                                        nullable: true
                                      receiver_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      storage_deposit:
                                        description: >-
                                          Optionally make `storage_deposit` for
                                          `receiver_id` on `token`. The amount
                                          will be subtracted from user's NEP-141
                                          `wNEAR` balance. NOTE: the `wNEAR` will
                                          not be refunded in case of fail
                                        type: string
                                        nullable: true
                                      token:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      token_ids:
                                        type: array
                                        items:
                                          type: string
                                    additionalProperties: false
                                  - description: See [`NativeWithdraw`]
                                    type: object
                                    required:
                                      - amount
                                      - intent
                                      - receiver_id
                                    properties:
                                      amount:
                                        type: string
                                      intent:
                                        type: string
                                        enum:
                                          - native_withdraw
                                      receiver_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                    additionalProperties: false
                                  - description: See [`StorageDeposit`]
                                    type: object
                                    required:
                                      - amount
                                      - contract_id
                                      - deposit_for_account_id
                                      - intent
                                    properties:
                                      amount:
                                        type: string
                                      contract_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      deposit_for_account_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      intent:
                                        type: string
                                        enum:
                                          - storage_deposit
                                    additionalProperties: false
                                  - description: See [`TokenDiff`]
                                    type: object
                                    required:
                                      - diff
                                      - intent
                                    properties:
                                      diff:
                                        type: object
                                        additionalProperties:
                                          type: string
                                      intent:
                                        type: string
                                        enum:
                                          - token_diff
                                      memo:
                                        type: string
                                        nullable: true
                                      referral:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                        nullable: true
                                    additionalProperties: false
                                  - description: See [`SetAuthByPredecessorId`]
                                    type: object
                                    required:
                                      - enabled
                                      - intent
                                    properties:
                                      enabled:
                                        type: boolean
                                      intent:
                                        type: string
                                        enum:
                                          - set_auth_by_predecessor_id
                                    additionalProperties: false
                                  - description: See [`AuthCall`]
                                    type: object
                                    required:
                                      - contract_id
                                      - intent
                                      - msg
                                    properties:
                                      attached_deposit:
                                        description: >-
                                          Optionally, attach deposit to
                                          [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                          call. The amount will be subtracted from
                                          user's NEP-141 `wNEAR` balance.


                                          NOTE: the `wNEAR` will not be refunded
                                          in case of fail.
                                        type: string
                                      contract_id:
                                        description: >-
                                          Callee for
                                          [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                        type: string
                                      intent:
                                        type: string
                                        enum:
                                          - auth_call
                                      min_gas:
                                        description: >-
                                          Optional minimum gas required for
                                          created promise to succeed. By default,
                                          only
                                          [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                          is required.


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: >-
                                          `msg` to pass in
                                          [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                        type: string
                                      state_init:
                                        description: >-
                                          Optionally initialize the receiver's
                                          contract (Deterministic AccountId) via
                                          [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                          right before calling
                                          [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                          (in the same receipt).
                                        anyOf:
                                          - oneOf:
                                              - type: object
                                                required:
                                                  - code
                                                  - data
                                                  - version
                                                properties:
                                                  code:
                                                    oneOf:
                                                      - type: object
                                                        required:
                                                          - hash
                                                        properties:
                                                          hash:
                                                            type: string
                                                        additionalProperties: false
                                                      - type: object
                                                        required:
                                                          - account_id
                                                        properties:
                                                          account_id:
                                                            description: >-
                                                              NEAR Account Identifier.


                                                              This is a unique, syntactically valid,
                                                              human-readable account identifier on the
                                                              NEAR network.


                                                              [See the crate-level docs for
                                                              information about
                                                              validation.](index.html#account-id-rules)


                                                              Also see [Error kind
                                                              precedence](AccountId#error-kind-precedence).


                                                              ## Examples


                                                              ``` use near_account_id::AccountId;


                                                              let alice: AccountId =
                                                              "alice.near".parse().unwrap();


                                                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                              // (ƒ is not f) ```
                                                            type: string
                                                        additionalProperties: false
                                                  data:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  version:
                                                    type: string
                                                    enum:
                                                      - v1
                                                additionalProperties: false
                                            nullable: true
                                    additionalProperties: false
                                  - description: >-
                                      Mint a set of tokens from the signer to a
                                      specified account id, within the intents
                                      contract.
                                    type: object
                                    required:
                                      - intent
                                      - receiver_id
                                      - tokens
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - imt_mint
                                      memo:
                                        type: string
                                        nullable: true
                                      min_gas:
                                        description: >-
                                          Minimum gas for `mt_on_transfer()`


                                          Remaining gas will be distributed evenly
                                          across all Function Call Promises
                                          created during execution of current
                                          receipt.
                                        type: string
                                        nullable: true
                                      msg:
                                        description: Message to pass to `mt_on_transfer`
                                        type: string
                                      receiver_id:
                                        description: Receiver of the minted tokens
                                        type: string
                                      state_init:
                                        description: >-
                                          Optionally initialize the receiver's
                                          contract (Deterministic AccountId) via
                                          [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                          right before calling `mt_on_transfer()`
                                          (in the same receipt).
                                        anyOf:
                                          - oneOf:
                                              - type: object
                                                required:
                                                  - code
                                                  - data
                                                  - version
                                                properties:
                                                  code:
                                                    oneOf:
                                                      - type: object
                                                        required:
                                                          - hash
                                                        properties:
                                                          hash:
                                                            type: string
                                                        additionalProperties: false
                                                      - type: object
                                                        required:
                                                          - account_id
                                                        properties:
                                                          account_id:
                                                            description: >-
                                                              NEAR Account Identifier.


                                                              This is a unique, syntactically valid,
                                                              human-readable account identifier on the
                                                              NEAR network.


                                                              [See the crate-level docs for
                                                              information about
                                                              validation.](index.html#account-id-rules)


                                                              Also see [Error kind
                                                              precedence](AccountId#error-kind-precedence).


                                                              ## Examples


                                                              ``` use near_account_id::AccountId;


                                                              let alice: AccountId =
                                                              "alice.near".parse().unwrap();


                                                              assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                              // (ƒ is not f) ```
                                                            type: string
                                                        additionalProperties: false
                                                  data:
                                                    type: object
                                                    additionalProperties:
                                                      type: string
                                                  version:
                                                    type: string
                                                    enum:
                                                      - v1
                                                additionalProperties: false
                                            nullable: true
                                      tokens:
                                        description: >-
                                          The token_ids will be wrapped to bind
                                          the token ID to the minter authority
                                          (i.e. signer of this intent). The final
                                          string representation of the token will
                                          be as follows:
                                          `imt:<minter_id>:<token_id>`
                                        type: object
                                        additionalProperties:
                                          type: string
                                    additionalProperties: false
                                  - description: >-
                                      Burn a set of imt tokens, within the
                                      intents contract.
                                    type: object
                                    required:
                                      - intent
                                      - minter_id
                                      - tokens
                                    properties:
                                      intent:
                                        type: string
                                        enum:
                                          - imt_burn
                                      memo:
                                        type: string
                                        nullable: true
                                      minter_id:
                                        description: >-
                                          NEAR Account Identifier.


                                          This is a unique, syntactically valid,
                                          human-readable account identifier on the
                                          NEAR network.


                                          [See the crate-level docs for
                                          information about
                                          validation.](index.html#account-id-rules)


                                          Also see [Error kind
                                          precedence](AccountId#error-kind-precedence).


                                          ## Examples


                                          ``` use near_account_id::AccountId;


                                          let alice: AccountId =
                                          "alice.near".parse().unwrap();


                                          assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                          // (ƒ is not f) ```
                                        type: string
                                      tokens:
                                        description: >-
                                          The token_ids will be wrapped to bind
                                          the token ID to the minter authority.
                                          The final string representation of the
                                          token will be as follows:
                                          `imt:<minter_id>:<token_id>`
                                        type: object
                                        additionalProperties:
                                          type: string
                                    additionalProperties: false
                            nonce:
                              type: string
                              description: 'Encoding: base64'
                              example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                            signer_id:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                            verifying_contract:
                              description: >-
                                NEAR Account Identifier.


                                This is a unique, syntactically valid,
                                human-readable account identifier on the NEAR
                                network.


                                [See the crate-level docs for information about
                                validation.](index.html#account-id-rules)


                                Also see [Error kind
                                precedence](AccountId#error-kind-precedence).


                                ## Examples


                                ``` use near_account_id::AccountId;


                                let alice: AccountId =
                                "alice.near".parse().unwrap();


                                assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                // (ƒ is not f) ```
                              type: string
                    type:
                      type: string
                      enum:
                        - text
                  additionalProperties: false
        - type: object
          required:
            - standard
            - payload
          additionalProperties: false
          properties:
            standard:
              type: string
              enum:
                - sep53
            payload:
              type: object
              required:
                - original
                - parsed
              additionalProperties: false
              properties:
                original:
                  type: string
                parsed:
                  type: object
                  required:
                    - deadline
                    - nonce
                    - signer_id
                    - verifying_contract
                  properties:
                    deadline:
                      type: string
                    intents:
                      description: >-
                        Sequence of intents to execute in given order. Empty
                        list is also a valid sequence, i.e. it doesn't do
                        anything, but still invalidates the `nonce` for the
                        signer WARNING: Promises created by different intents
                        are executed concurrently and does not rely on the order
                        of the intents in this structure
                      type: array
                      items:
                        oneOf:
                          - description: See [`AddPublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - add_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`RemovePublicKey`]
                            type: object
                            required:
                              - intent
                              - public_key
                            properties:
                              intent:
                                type: string
                                enum:
                                  - remove_public_key
                              public_key:
                                type: string
                                description: 'Encoding: base58'
                                example: >-
                                  ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm
                            additionalProperties: false
                          - description: See [`Transfer`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - transfer
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: See [`FtWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                              - token
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - ft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `ft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `ft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `ft_transfer_call`.
                                  Otherwise, `ft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`NftWithdraw`]
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - token
                              - token_id
                            properties:
                              intent:
                                type: string
                                enum:
                                  - nft_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed: * `nft_transfer`:     
                                  minimum: 15TGas, default: 15TGas *
                                  `nft_transfer_call`: minimum: 30TGas, default:
                                  50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `nft_transfer_call`.
                                  Otherwise, `nft_transfer` will be used. NOTE:
                                  No refund will be made in case of insufficient
                                  `storage_deposit` on `token` for `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_id:
                                type: string
                            additionalProperties: false
                          - description: See [`MtWithdraw`]
                            type: object
                            required:
                              - amounts
                              - intent
                              - receiver_id
                              - token
                              - token_ids
                            properties:
                              amounts:
                                type: array
                                items:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - mt_withdraw
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Optional minimum required Near gas for created
                                  Promise to succeed per token: *
                                  `mt_batch_transfer`:      minimum: 20TGas,
                                  default: 20TGas * `mt_batch_transfer_call`:
                                  minimum: 35TGas, default: 50TGas


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  Message to pass to `mt_batch_transfer_call`.
                                  Otherwise, `mt_batch_transfer` will be used.
                                  NOTE: No refund will be made in case of
                                  insufficient `storage_deposit` on `token` for
                                  `receiver_id`
                                type: string
                                nullable: true
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              storage_deposit:
                                description: >-
                                  Optionally make `storage_deposit` for
                                  `receiver_id` on `token`. The amount will be
                                  subtracted from user's NEP-141 `wNEAR`
                                  balance. NOTE: the `wNEAR` will not be
                                  refunded in case of fail
                                type: string
                                nullable: true
                              token:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              token_ids:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          - description: See [`NativeWithdraw`]
                            type: object
                            required:
                              - amount
                              - intent
                              - receiver_id
                            properties:
                              amount:
                                type: string
                              intent:
                                type: string
                                enum:
                                  - native_withdraw
                              receiver_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                            additionalProperties: false
                          - description: See [`StorageDeposit`]
                            type: object
                            required:
                              - amount
                              - contract_id
                              - deposit_for_account_id
                              - intent
                            properties:
                              amount:
                                type: string
                              contract_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              deposit_for_account_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              intent:
                                type: string
                                enum:
                                  - storage_deposit
                            additionalProperties: false
                          - description: See [`TokenDiff`]
                            type: object
                            required:
                              - diff
                              - intent
                            properties:
                              diff:
                                type: object
                                additionalProperties:
                                  type: string
                              intent:
                                type: string
                                enum:
                                  - token_diff
                              memo:
                                type: string
                                nullable: true
                              referral:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                                nullable: true
                            additionalProperties: false
                          - description: See [`SetAuthByPredecessorId`]
                            type: object
                            required:
                              - enabled
                              - intent
                            properties:
                              enabled:
                                type: boolean
                              intent:
                                type: string
                                enum:
                                  - set_auth_by_predecessor_id
                            additionalProperties: false
                          - description: See [`AuthCall`]
                            type: object
                            required:
                              - contract_id
                              - intent
                              - msg
                            properties:
                              attached_deposit:
                                description: >-
                                  Optionally, attach deposit to
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                  call. The amount will be subtracted from
                                  user's NEP-141 `wNEAR` balance.


                                  NOTE: the `wNEAR` will not be refunded in case
                                  of fail.
                                type: string
                              contract_id:
                                description: >-
                                  Callee for
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              intent:
                                type: string
                                enum:
                                  - auth_call
                              min_gas:
                                description: >-
                                  Optional minimum gas required for created
                                  promise to succeed. By default, only
                                  [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT)
                                  is required.


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: >-
                                  `msg` to pass in
                                  [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling
                                  [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth)
                                  (in the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                            additionalProperties: false
                          - description: >-
                              Mint a set of tokens from the signer to a
                              specified account id, within the intents contract.
                            type: object
                            required:
                              - intent
                              - receiver_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_mint
                              memo:
                                type: string
                                nullable: true
                              min_gas:
                                description: >-
                                  Minimum gas for `mt_on_transfer()`


                                  Remaining gas will be distributed evenly
                                  across all Function Call Promises created
                                  during execution of current receipt.
                                type: string
                                nullable: true
                              msg:
                                description: Message to pass to `mt_on_transfer`
                                type: string
                              receiver_id:
                                description: Receiver of the minted tokens
                                type: string
                              state_init:
                                description: >-
                                  Optionally initialize the receiver's contract
                                  (Deterministic AccountId) via
                                  [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action)
                                  right before calling `mt_on_transfer()` (in
                                  the same receipt).
                                anyOf:
                                  - oneOf:
                                      - type: object
                                        required:
                                          - code
                                          - data
                                          - version
                                        properties:
                                          code:
                                            oneOf:
                                              - type: object
                                                required:
                                                  - hash
                                                properties:
                                                  hash:
                                                    type: string
                                                additionalProperties: false
                                              - type: object
                                                required:
                                                  - account_id
                                                properties:
                                                  account_id:
                                                    description: >-
                                                      NEAR Account Identifier.


                                                      This is a unique, syntactically valid,
                                                      human-readable account identifier on the
                                                      NEAR network.


                                                      [See the crate-level docs for
                                                      information about
                                                      validation.](index.html#account-id-rules)


                                                      Also see [Error kind
                                                      precedence](AccountId#error-kind-precedence).


                                                      ## Examples


                                                      ``` use near_account_id::AccountId;


                                                      let alice: AccountId =
                                                      "alice.near".parse().unwrap();


                                                      assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                                      // (ƒ is not f) ```
                                                    type: string
                                                additionalProperties: false
                                          data:
                                            type: object
                                            additionalProperties:
                                              type: string
                                          version:
                                            type: string
                                            enum:
                                              - v1
                                        additionalProperties: false
                                    nullable: true
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority (i.e. signer
                                  of this intent). The final string
                                  representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                          - description: >-
                              Burn a set of imt tokens, within the intents
                              contract.
                            type: object
                            required:
                              - intent
                              - minter_id
                              - tokens
                            properties:
                              intent:
                                type: string
                                enum:
                                  - imt_burn
                              memo:
                                type: string
                                nullable: true
                              minter_id:
                                description: >-
                                  NEAR Account Identifier.


                                  This is a unique, syntactically valid,
                                  human-readable account identifier on the NEAR
                                  network.


                                  [See the crate-level docs for information
                                  about
                                  validation.](index.html#account-id-rules)


                                  Also see [Error kind
                                  precedence](AccountId#error-kind-precedence).


                                  ## Examples


                                  ``` use near_account_id::AccountId;


                                  let alice: AccountId =
                                  "alice.near".parse().unwrap();


                                  assert!("ƒelicia.near".parse::<AccountId>().is_err());
                                  // (ƒ is not f) ```
                                type: string
                              tokens:
                                description: >-
                                  The token_ids will be wrapped to bind the
                                  token ID to the minter authority. The final
                                  string representation of the token will be as
                                  follows: `imt:<minter_id>:<token_id>`
                                type: object
                                additionalProperties:
                                  type: string
                            additionalProperties: false
                    nonce:
                      type: string
                      description: 'Encoding: base64'
                      example: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                    signer_id:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
                    verifying_contract:
                      description: >-
                        NEAR Account Identifier.


                        This is a unique, syntactically valid, human-readable
                        account identifier on the NEAR network.


                        [See the crate-level docs for information about
                        validation.](index.html#account-id-rules)


                        Also see [Error kind
                        precedence](AccountId#error-kind-precedence).


                        ## Examples


                        ``` use near_account_id::AccountId;


                        let alice: AccountId = "alice.near".parse().unwrap();


                        assert!("ƒelicia.near".parse::<AccountId>().is_err());
                        // (ƒ is not f) ```
                      type: string
    MultiPayloadNep413Narrowed:
      type: object
      required:
        - standard
        - payload
      properties:
        standard:
          type: string
          enum:
            - nep413
        payload:
          $ref: '#/components/schemas/Nep413Payload'
      additionalProperties: false
    MultiPayloadErc191Narrowed:
      type: object
      required:
        - standard
        - payload
      properties:
        standard:
          type: string
          enum:
            - erc191
        payload:
          $ref: '#/components/schemas/Erc191Payload'
      additionalProperties: false
    MultiPayloadTip191Narrowed:
      type: object
      required:
        - standard
        - payload
      properties:
        standard:
          type: string
          enum:
            - tip191
        payload:
          $ref: '#/components/schemas/Tip191Payload'
      additionalProperties: false
    MultiPayloadRawEd25519Narrowed:
      description: Raw Ed25519 payload is an inline string
      type: object
      required:
        - standard
        - payload
      properties:
        standard:
          type: string
          enum:
            - raw_ed25519
        payload:
          type: string
      additionalProperties: false
    MultiPayloadWebauthnNarrowed:
      description: Webauthn payload is an inline string
      type: object
      required:
        - standard
        - payload
      properties:
        standard:
          type: string
          enum:
            - webauthn
        payload:
          type: string
      additionalProperties: false
    MultiPayloadTonConnectNarrowed:
      type: object
      required:
        - standard
        - payload
      properties:
        standard:
          type: string
          enum:
            - ton_connect
        payload:
          $ref: '#/components/schemas/TonConnectPayloadSchema'
      additionalProperties: false
    MultiPayloadSep53Narrowed:
      description: Sep53 payload is an inline string
      type: object
      required:
        - standard
        - payload
      properties:
        standard:
          type: string
          enum:
            - sep53
        payload:
          type: string
      additionalProperties: false
