/**
 * Program IDL in camelCase format in order to be used in JS/TS.
 *
 * Note that this is only a type helper and is not the actual IDL. The original
 * IDL can be found at `target/idl/agents_program.json`.
 */
export type AgentsProgram = {
    "address": "AGENTSnP7JLtxoqbNt3eHT6mEBY338QW8CkNXTHGnUcN";
    "metadata": {
        "name": "agentsProgram";
        "version": "0.1.0";
        "spec": "0.1.0";
        "description": "Created with Anchor";
    };
    "instructions": [
        {
            "name": "closeAgent";
            "discriminator": [
                52,
                185,
                104,
                145,
                157,
                30,
                87,
                237
            ];
            "accounts": [
                {
                    "name": "creator";
                    "writable": true;
                    "signer": true;
                },
                {
                    "name": "agent";
                    "writable": true;
                    "pda": {
                        "seeds": [
                            {
                                "kind": "arg";
                                "path": "agentUuid";
                            }
                        ];
                    };
                },
                {
                    "name": "agentState";
                    "writable": true;
                    "pda": {
                        "seeds": [
                            {
                                "kind": "account";
                                "path": "agent";
                            }
                        ];
                    };
                },
                {
                    "name": "systemProgram";
                    "address": "11111111111111111111111111111111";
                },
                {
                    "name": "rent";
                    "address": "SysvarRent111111111111111111111111111111111";
                }
            ];
            "args": [
                {
                    "name": "agentUuid";
                    "type": {
                        "array": [
                            "u8",
                            16
                        ];
                    };
                }
            ];
        },
        {
            "name": "createAgent";
            "discriminator": [
                143,
                66,
                198,
                95,
                110,
                85,
                83,
                249
            ];
            "accounts": [
                {
                    "name": "creator";
                    "writable": true;
                    "signer": true;
                },
                {
                    "name": "agent";
                    "writable": true;
                    "pda": {
                        "seeds": [
                            {
                                "kind": "arg";
                                "path": "agentUuid";
                            }
                        ];
                    };
                },
                {
                    "name": "agentState";
                    "writable": true;
                    "pda": {
                        "seeds": [
                            {
                                "kind": "account";
                                "path": "agent";
                            }
                        ];
                    };
                },
                {
                    "name": "feesVault";
                    "writable": true;
                    "pda": {
                        "seeds": [
                            {
                                "kind": "const";
                                "value": [
                                    102,
                                    101,
                                    101,
                                    115,
                                    95,
                                    118,
                                    97,
                                    117,
                                    108,
                                    116
                                ];
                            }
                        ];
                    };
                },
                {
                    "name": "authority";
                },
                {
                    "name": "systemProgram";
                    "address": "11111111111111111111111111111111";
                },
                {
                    "name": "rent";
                    "address": "SysvarRent111111111111111111111111111111111";
                },
                {
                    "name": "eventAuthority";
                    "pda": {
                        "seeds": [
                            {
                                "kind": "const";
                                "value": [
                                    95,
                                    95,
                                    101,
                                    118,
                                    101,
                                    110,
                                    116,
                                    95,
                                    97,
                                    117,
                                    116,
                                    104,
                                    111,
                                    114,
                                    105,
                                    116,
                                    121
                                ];
                            }
                        ];
                    };
                },
                {
                    "name": "program";
                }
            ];
            "args": [
                {
                    "name": "agentUuid";
                    "type": {
                        "array": [
                            "u8",
                            16
                        ];
                    };
                }
            ];
        },
        {
            "name": "topUpBalance";
            "discriminator": [
                248,
                171,
                98,
                148,
                6,
                47,
                219,
                194
            ];
            "accounts": [
                {
                    "name": "user";
                    "writable": true;
                    "signer": true;
                },
                {
                    "name": "depositTokenMint";
                },
                {
                    "name": "userDepositTokenAccount";
                    "writable": true;
                    "pda": {
                        "seeds": [
                            {
                                "kind": "account";
                                "path": "user";
                            },
                            {
                                "kind": "const";
                                "value": [
                                    6,
                                    221,
                                    246,
                                    225,
                                    215,
                                    101,
                                    161,
                                    147,
                                    217,
                                    203,
                                    225,
                                    70,
                                    206,
                                    235,
                                    121,
                                    172,
                                    28,
                                    180,
                                    133,
                                    237,
                                    95,
                                    91,
                                    55,
                                    145,
                                    58,
                                    140,
                                    245,
                                    133,
                                    126,
                                    255,
                                    0,
                                    169
                                ];
                            },
                            {
                                "kind": "account";
                                "path": "depositTokenMint";
                            }
                        ];
                        "program": {
                            "kind": "const";
                            "value": [
                                140,
                                151,
                                37,
                                143,
                                78,
                                36,
                                137,
                                241,
                                187,
                                61,
                                16,
                                41,
                                20,
                                142,
                                13,
                                131,
                                11,
                                90,
                                19,
                                153,
                                218,
                                255,
                                16,
                                132,
                                4,
                                142,
                                123,
                                216,
                                219,
                                233,
                                248,
                                89
                            ];
                        };
                    };
                },
                {
                    "name": "feesVault";
                    "pda": {
                        "seeds": [
                            {
                                "kind": "const";
                                "value": [
                                    102,
                                    101,
                                    101,
                                    115,
                                    95,
                                    118,
                                    97,
                                    117,
                                    108,
                                    116
                                ];
                            }
                        ];
                    };
                },
                {
                    "name": "vaultDepositTokenAccount";
                    "writable": true;
                },
                {
                    "name": "tokenProgram";
                    "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA";
                },
                {
                    "name": "associatedTokenProgram";
                    "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
                },
                {
                    "name": "systemProgram";
                    "address": "11111111111111111111111111111111";
                },
                {
                    "name": "eventAuthority";
                    "pda": {
                        "seeds": [
                            {
                                "kind": "const";
                                "value": [
                                    95,
                                    95,
                                    101,
                                    118,
                                    101,
                                    110,
                                    116,
                                    95,
                                    97,
                                    117,
                                    116,
                                    104,
                                    111,
                                    114,
                                    105,
                                    116,
                                    121
                                ];
                            }
                        ];
                    };
                },
                {
                    "name": "program";
                }
            ];
            "args": [
                {
                    "name": "amount";
                    "type": "u64";
                }
            ];
        }
    ];
    "accounts": [
        {
            "name": "agent";
            "discriminator": [
                47,
                166,
                112,
                147,
                155,
                197,
                86,
                7
            ];
        }
    ];
    "events": [
        {
            "name": "createAgentEvent";
            "discriminator": [
                93,
                170,
                214,
                27,
                113,
                140,
                184,
                161
            ];
        },
        {
            "name": "topUpBalanceEvent";
            "discriminator": [
                221,
                112,
                6,
                21,
                185,
                24,
                125,
                167
            ];
        }
    ];
    "errors": [
        {
            "code": 6000;
            "name": "customError";
            "msg": "Custom error message";
        }
    ];
    "types": [
        {
            "name": "agent";
            "type": {
                "kind": "struct";
                "fields": [
                    {
                        "name": "ownAddress";
                        "type": "pubkey";
                    },
                    {
                        "name": "uuid";
                        "type": {
                            "array": [
                                "u8",
                                16
                            ];
                        };
                    },
                    {
                        "name": "creator";
                        "type": "pubkey";
                    },
                    {
                        "name": "hasToken";
                        "type": "u8";
                    },
                    {
                        "name": "metadata";
                        "type": "pubkey";
                    },
                    {
                        "name": "mint";
                        "type": "pubkey";
                    },
                    {
                        "name": "agentPda";
                        "type": "pubkey";
                    },
                    {
                        "name": "balance";
                        "type": "u64";
                    },
                    {
                        "name": "usdcBalance";
                        "type": "u64";
                    },
                    {
                        "name": "wsolBalance";
                        "type": "u64";
                    },
                    {
                        "name": "authority";
                        "type": "pubkey";
                    },
                    {
                        "name": "extraBytes";
                        "type": {
                            "array": [
                                "pubkey",
                                32
                            ];
                        };
                    }
                ];
            };
        },
        {
            "name": "createAgentEvent";
            "type": {
                "kind": "struct";
                "fields": [
                    {
                        "name": "stateAddress";
                        "type": "pubkey";
                    },
                    {
                        "name": "agentUuid";
                        "type": {
                            "array": [
                                "u8",
                                16
                            ];
                        };
                    },
                    {
                        "name": "creator";
                        "type": "pubkey";
                    },
                    {
                        "name": "agent";
                        "type": "pubkey";
                    }
                ];
            };
        },
        {
            "name": "topUpBalanceEvent";
            "type": {
                "kind": "struct";
                "fields": [
                    {
                        "name": "user";
                        "type": "pubkey";
                    },
                    {
                        "name": "amount";
                        "type": "u64";
                    },
                    {
                        "name": "mint";
                        "type": "pubkey";
                    }
                ];
            };
        }
    ];
    "constants": [
        {
            "name": "seed";
            "type": "string";
            "value": "\"anchor\"";
        }
    ];
};
