{
    "type": "object",
    "properties": {
        "recipient": {
            "description": "Can be either address(base58 encoded 24 byte address) or alias.\nAlias should be used like 'alias:{chainId}:{alias}>'. E.g.:\nIf we have alias 'foo', and we want TESTNET transaction, recipient should be 'alias:K:foo'",
            "type": "string"
        },
        "amount": {
            "$ref": "https://raw.githubusercontent.com/acrylplatform/acryl-transactions/master/src/schemas/ITransferParams.json#/definitions/LONG"
        },
        "assetId": {
            "type": [
                "null",
                "string"
            ]
        },
        "feeAssetId": {
            "description": "Fee can be paid in custom token if sponsorship has been set for this token",
            "type": [
                "null",
                "string"
            ]
        },
        "attachment": {
            "description": "Bytearray encoded as base58 string",
            "type": "string"
        },
        "fee": {
            "description": "Transaction fee. If not set, fee will be calculated automatically",
            "$ref": "https://raw.githubusercontent.com/acrylplatform/acryl-transactions/master/src/schemas/ITransferParams.json#/definitions/LONG"
        },
        "additionalFee": {
            "description": "If fee is not set, this value will be added to automatically calculated fee. E.x.:\nAccount is scripted and 400000 fee more is required.",
            "type": "number"
        },
        "senderPublicKey": {
            "description": "If not set, public key will be derived from seed phrase. You should provide senderPublicKey in two cases:\n1. Account, from which this tx should be sent, differs from tx signer. E.g., we have smart account that requires 2 signatures.\n2. You to create tx without proof. Therefore no seed is provided.",
            "type": "string"
        },
        "timestamp": {
            "description": "Transaction timestamp. If not set current timestamp will be used. Date.now()",
            "type": "number"
        }
    },
    "required": [
        "amount",
        "recipient"
    ],
    "definitions": {
        "LONG": {
            "type": [
                "number"
            ]
        }
    },
    "$schema": "http://json-schema.org/draft-07/schema#",
    "$id": "https://raw.githubusercontent.com/acrylplatform/acryl-transactions/master/src/schemas/ITransferParams.json"
}
