Variable definition for prompt templates

Defines the type, requirements, and validation for template variables.

const variable: PromptVariable = {
name: 'userName',
type: 'string',
required: true,
description: 'Name of the user',
validator: (value) => typeof value === 'string' && value.length > 0
};
interface PromptVariable {
    name: string;
    type: "string" | "number" | "boolean" | "object" | "array";
    required: boolean;
    default?: unknown;
    description?: string;
    validator?: (value: unknown) => boolean;
}

Properties

name: string

Variable name used in template

type: "string" | "number" | "boolean" | "object" | "array"

Expected type of the variable

required: boolean

Whether variable is required for rendering

default?: unknown

Default value if not provided

description?: string

Human-readable description

validator?: (value: unknown) => boolean

Custom validation function