export type BlockassetMinter = {
    "version": "2.4.9";
    "name": "blockasset_minter";
    "instructions": [
        {
            "name": "closeMinter";
            "accounts": [
                {
                    "name": "minter";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "redeemedMints";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "project";
                    "isMut": false;
                    "isSigner": false;
                },
                {
                    "name": "mint";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "authority";
                    "isMut": true;
                    "isSigner": true;
                },
                {
                    "name": "tokenProgram";
                    "isMut": false;
                    "isSigner": false;
                }
            ];
            "args": [];
        },
        {
            "name": "initMinter";
            "accounts": [
                {
                    "name": "minter";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "redeemedMints";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "project";
                    "isMut": false;
                    "isSigner": false;
                },
                {
                    "name": "mint";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "payer";
                    "isMut": true;
                    "isSigner": true;
                },
                {
                    "name": "tokenProgram";
                    "isMut": false;
                    "isSigner": false;
                },
                {
                    "name": "systemProgram";
                    "isMut": false;
                    "isSigner": false;
                }
            ];
            "args": [
                {
                    "name": "ix";
                    "type": {
                        "defined": "InitMinterIx";
                    };
                }
            ];
        },
        {
            "name": "mint";
            "accounts": [
                {
                    "name": "minter";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "redeemedMints";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "mint";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "userTokenAccount";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "user";
                    "isMut": true;
                    "isSigner": true;
                },
                {
                    "name": "tokenProgram";
                    "isMut": false;
                    "isSigner": false;
                },
                {
                    "name": "systemProgram";
                    "isMut": false;
                    "isSigner": false;
                }
            ];
            "args": [];
        },
        {
            "name": "setAsRedeemed";
            "accounts": [
                {
                    "name": "minter";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "redeemedMints";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "project";
                    "isMut": false;
                    "isSigner": false;
                },
                {
                    "name": "authority";
                    "isMut": true;
                    "isSigner": true;
                },
                {
                    "name": "tokenProgram";
                    "isMut": false;
                    "isSigner": false;
                },
                {
                    "name": "systemProgram";
                    "isMut": false;
                    "isSigner": false;
                }
            ];
            "args": [
                {
                    "name": "mints";
                    "type": {
                        "vec": "publicKey";
                    };
                }
            ];
        },
        {
            "name": "updateMinter";
            "accounts": [
                {
                    "name": "minter";
                    "isMut": true;
                    "isSigner": false;
                },
                {
                    "name": "project";
                    "isMut": false;
                    "isSigner": false;
                },
                {
                    "name": "authority";
                    "isMut": true;
                    "isSigner": true;
                },
                {
                    "name": "systemProgram";
                    "isMut": false;
                    "isSigner": false;
                }
            ];
            "args": [
                {
                    "name": "ix";
                    "type": {
                        "defined": "UpdateMinterIx";
                    };
                }
            ];
        }
    ];
    "accounts": [
        {
            "name": "minter";
            "type": {
                "kind": "struct";
                "fields": [
                    {
                        "name": "bump";
                        "type": "u8";
                    },
                    {
                        "name": "identifier";
                        "type": "publicKey";
                    },
                    {
                        "name": "project";
                        "type": "publicKey";
                    },
                    {
                        "name": "mint";
                        "type": "publicKey";
                    },
                    {
                        "name": "authorizedCreators";
                        "type": {
                            "vec": "publicKey";
                        };
                    },
                    {
                        "name": "metadataKind";
                        "type": {
                            "defined": "MetadataKind";
                        };
                    },
                    {
                        "name": "minSetSize";
                        "type": {
                            "option": "u8";
                        };
                    },
                    {
                        "name": "start";
                        "type": {
                            "option": "i64";
                        };
                    },
                    {
                        "name": "end";
                        "type": {
                            "option": "i64";
                        };
                    },
                    {
                        "name": "maxMint";
                        "type": {
                            "option": "u32";
                        };
                    }
                ];
            };
        },
        {
            "name": "redeemedMints";
            "type": {
                "kind": "struct";
                "fields": [
                    {
                        "name": "total";
                        "type": "u32";
                    },
                    {
                        "name": "minter";
                        "type": "publicKey";
                    }
                ];
            };
        }
    ];
    "types": [
        {
            "name": "InitMinterIx";
            "type": {
                "kind": "struct";
                "fields": [
                    {
                        "name": "identifier";
                        "type": "publicKey";
                    },
                    {
                        "name": "authorizedCreators";
                        "type": {
                            "vec": "publicKey";
                        };
                    },
                    {
                        "name": "metadataKind";
                        "type": {
                            "option": "u8";
                        };
                    },
                    {
                        "name": "maxMint";
                        "type": {
                            "option": "u32";
                        };
                    },
                    {
                        "name": "minSetSize";
                        "type": {
                            "option": "u8";
                        };
                    },
                    {
                        "name": "start";
                        "type": {
                            "option": "i64";
                        };
                    },
                    {
                        "name": "end";
                        "type": {
                            "option": "i64";
                        };
                    }
                ];
            };
        },
        {
            "name": "UpdateMinterIx";
            "type": {
                "kind": "struct";
                "fields": [
                    {
                        "name": "authorizedCreators";
                        "type": {
                            "vec": "publicKey";
                        };
                    },
                    {
                        "name": "metadataKind";
                        "type": {
                            "option": "u8";
                        };
                    },
                    {
                        "name": "maxMint";
                        "type": {
                            "option": "u32";
                        };
                    },
                    {
                        "name": "minSetSize";
                        "type": {
                            "option": "u8";
                        };
                    },
                    {
                        "name": "start";
                        "type": {
                            "option": "i64";
                        };
                    },
                    {
                        "name": "end";
                        "type": {
                            "option": "i64";
                        };
                    }
                ];
            };
        },
        {
            "name": "MetadataKind";
            "type": {
                "kind": "enum";
                "variants": [
                    {
                        "name": "NoRestriction";
                    },
                    {
                        "name": "UniqueNames";
                    },
                    {
                        "name": "UniqueSymbols";
                    }
                ];
            };
        }
    ];
    "errors": [
        {
            "code": 6000;
            "name": "InvalidProjectAuthority";
            "msg": "Invalid project authority";
        },
        {
            "code": 6001;
            "name": "InvalidTokenAccount";
            "msg": "Invalid token account";
        },
        {
            "code": 6002;
            "name": "InvalidNftMint";
            "msg": "Invalid NFT mint";
        },
        {
            "code": 6003;
            "name": "NotEnoughTokensRemain";
            "msg": "Not enough tokens remain";
        },
        {
            "code": 6004;
            "name": "NotStarted";
            "msg": "Not started yet";
        },
        {
            "code": 6005;
            "name": "Ended";
            "msg": "Ended";
        },
        {
            "code": 6006;
            "name": "InvalidMint";
            "msg": "Invalid mint";
        },
        {
            "code": 6007;
            "name": "InvalidMintMetadata";
            "msg": "Invalid mint metadata";
        },
        {
            "code": 6008;
            "name": "UnauthorizedMetadataForSet";
            "msg": "Unauthorized metadata for set";
        },
        {
            "code": 6009;
            "name": "SomeMintsAreAlreadyRedeemed";
            "msg": "Some mints are already redeemed";
        },
        {
            "code": 6010;
            "name": "InvalidOwner";
            "msg": "Invalid owner";
        },
        {
            "code": 6011;
            "name": "InvalidMintTokenAccount";
            "msg": "Invalid mint token account";
        }
    ];
};
export declare const IDL: BlockassetMinter;
//# sourceMappingURL=idl.d.ts.map