UNPKG

@coinbase/agentkit

Version:

Coinbase AgentKit core primitives

48 lines (47 loc) 2.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ClankTokenSchema = void 0; const zod_1 = require("zod"); /** * Action schemas for the clanker action provider. * * This file contains the Zod schemas that define the shape and validation * rules for action parameters in the clanker action provider. */ exports.ClankTokenSchema = zod_1.z .object({ tokenName: zod_1.z.string().min(1).max(100).describe("The name of the token (max 100 characters)"), tokenSymbol: zod_1.z.string().min(1).max(10).describe("The symbol of the token (max 10 characters)"), image: zod_1.z.string().url().describe("Normal or ipfs URL pointing to the token image"), vaultPercentage: zod_1.z .number() .min(0) .max(90) .describe("Percentage of token supply allocated to a vault that can be claimed by deployer after lockup period with optional vesting"), lockDuration_Days: zod_1.z .number() .min(7) .describe("Lockup duration of token (in days), minimum 7 days"), vestingDuration_Days: zod_1.z .number() .min(0) .describe("Vesting duration of token after lockup has passed (in days). Vesting is linear over the duration"), description: zod_1.z .string() .optional() .describe("Description of the token or token project (optional)"), socialMediaUrls: zod_1.z .array(zod_1.z.object({ platform: zod_1.z.string(), url: zod_1.z.string() })) .optional() .describe("Socials for the token. These may be displayed on aggregators."), interface: zod_1.z .string() .default("CDP AgentKit") .describe('System the token was deployed via. Defaults to "CDP AgentKit".'), id: zod_1.z .string() .default("") .describe("User id of the poster on the social platform the token was deployed from. Used for provenance and will be verified by aggregators."), }) .strip() .describe("Instructions for deploying a Clanker token");