Variable bookConst

book: ZodObject<{
    name: ZodOptional<ZodString>;
    description: ZodOptional<ZodString>;
    scan_depth: ZodOptional<ZodNumber>;
    token_budget: ZodOptional<ZodNumber>;
    recursive_scanning: ZodOptional<ZodBoolean>;
    extensions: ZodRecord<ZodString, ZodAny>;
    entries: ZodArray<ZodObject<{
        keys: ZodArray<ZodString, "many">;
        content: ZodString;
        extensions: ZodRecord<ZodString, ZodAny>;
        enabled: ZodBoolean;
        insertion_order: ZodNumber;
        case_sensitive: ZodOptional<ZodBoolean>;
        name: ZodOptional<ZodString>;
        priority: ZodOptional<ZodNumber>;
        id: ZodOptional<ZodNumber>;
        comment: ZodOptional<ZodString>;
        selective: ZodOptional<ZodBoolean>;
        secondary_keys: ZodOptional<ZodArray<ZodString, "many">>;
        constant: ZodOptional<ZodBoolean>;
        position: ZodOptional<ZodUnion<[ZodLiteral<"before_char">, ZodLiteral<"after_char">]>>;
    }, "strip", ZodTypeAny, {
        keys: string[];
        content: string;
        extensions: Record<string, any>;
        enabled: boolean;
        insertion_order: number;
        case_sensitive?: boolean;
        name?: string;
        priority?: number;
        id?: number;
        comment?: string;
        selective?: boolean;
        secondary_keys?: string[];
        constant?: boolean;
        position?: "before_char" | "after_char";
    }, {
        keys: string[];
        content: string;
        extensions: Record<string, any>;
        enabled: boolean;
        insertion_order: number;
        case_sensitive?: boolean;
        name?: string;
        priority?: number;
        id?: number;
        comment?: string;
        selective?: boolean;
        secondary_keys?: string[];
        constant?: boolean;
        position?: "before_char" | "after_char";
    }>, "many">;
}, "strip", ZodTypeAny, {
    name?: string;
    description?: string;
    scan_depth?: number;
    token_budget?: number;
    recursive_scanning?: boolean;
    extensions: Record<string, any>;
    entries: ({ keys: string[]; content: string; extensions: Record<string, any>; enabled: boolean; insertion_order: number; case_sensitive?: boolean | undefined; name?: string | undefined; priority?: number | undefined; ... 5 more ...; position?: "before_char" | ... 1 more ... | undefined; })[];
}, {
    name?: string;
    description?: string;
    scan_depth?: number;
    token_budget?: number;
    recursive_scanning?: boolean;
    extensions: Record<string, any>;
    entries: ({ keys: string[]; content: string; extensions: Record<string, any>; enabled: boolean; insertion_order: number; case_sensitive?: boolean | undefined; name?: string | undefined; priority?: number | undefined; ... 5 more ...; position?: "before_char" | ... 1 more ... | undefined; })[];
}> = ...

A parser object made with the zod library which can be used to validate or parse CharacterBook objects, which are used inside the V2 spec.

https://github.com/malfoyslastname/character-card-spec-v2/blob/main/spec_v2.md

Example

import * as Cards from 'character-card-utils'

// parsing
Cards.book.parse(validBook) //=> return type CharacterBook
Cards.book.parse(incorrectlyFormattedBook) //=> throws ZodError

// exception-free parsing
Cards.book.safeParse(validBook) // => return type { success: true; data: CharacterBook }
Cards.book.safeParse(invalidBook) //=> return type { success: false; error: ZodError }

Generated using TypeDoc