import { ContractConfig, Feature, FunctionConfig, MintConfig, ProjectConfig } from "@patchworkdev/common/types";

const reactionsProjectConfig: ProjectConfig = {
    name: "reactions",
    scopes: [
        {
            name: "myscope",
            whitelist: true,
            userAssign: false,
            userPatch: false,
            mintConfigs: {},
            patchFees: {},
            assignFees: {}
        }
    ],
    contracts: {
        "ReactionPatch": {
            scopeName: "myscope",
            name: "ReactionPatch",
            symbol: "RPATCH",
            baseURI: "https://replace-me-with-website/",
            schemaURI: "https://replace-me-with-website/schemas/reactionpatch.json",
            imageURI: "https://replace-me-with-website/assets/reactionpatch/{tokenID}",
            fields: [
                {
                    id: 1,
                    key: "reactions",
                    type: "literef",
                    description: "Reactions",
                    arrayLength: 0,
                },
                {
                    id: 2,
                    key: "reserved",
                    type: "uint256",
                    description: "Reserved",
                }
            ],
            features: [Feature.PATCH, Feature.REVERSIBLE],
            fragments: []
        },
        "Reaction": {
            scopeName: "myscope",
            name: "Reaction",
            symbol: "REACT",
            baseURI: "https://replace-me-with-website/",
            schemaURI: "https://replace-me-with-website/schemas/reaction.json",
            imageURI: "https://replace-me-with-website/assets/reaction/{tokenID}",
            fields: [
                {
                    id: 1,
                    key: "typeId",
                    type: "uint32",
                    description: "Reaction Type ID",
                },
                {
                    id: 2,
                    key: "value",
                    type: "uint32",
                    description: "Reaction Value",
                },
                {
                    id: 3,
                    key: "stickerPackAddr",
                    type: "address",
                    description: "Sticker Pack Address",
                }
            ],
            features: [Feature.MINTABLE, Feature.FRAGMENTSINGLE],
            fragments: []
        },
        "Comment": {
            scopeName: "myscope",
            name: "Comment",
            symbol: "COMMENT",
            baseURI: "https://replace-me-with-website/",
            schemaURI: "https://replace-me-with-website/schemas/comment.json",
            imageURI: "https://replace-me-with-website/assets/comment/{tokenID}",
            fields: [
                {
                    id: 1,
                    key: "comment",
                    type: "string",
                    description: "Comment",
                }
            ],
            features: [Feature.MINTABLE, Feature.FRAGMENTSINGLE],
            fragments: []
        }
    }
};

export default reactionsProjectConfig;