@forge/manifest
13.1.1-next.2-experimental-094961613.2.0-next.5
out/validators/modules-validators/rovo/skill-file-rules.d.ts+
out/validators/modules-validators/rovo/skill-file-rules.d.tsNew file+30
Index: package/out/validators/modules-validators/rovo/skill-file-rules.d.ts
===================================================================
--- package/out/validators/modules-validators/rovo/skill-file-rules.d.ts
+++ package/out/validators/modules-validators/rovo/skill-file-rules.d.ts
@@ -0,0 +1,30 @@
+import { AllModuleTypes, ValidationError } from '../../../types';
+import { Modules } from '../../../schema/manifest';
+export type SkillModule = NonNullable<Modules[AllModuleTypes.RovoSkill]>[number];
+export type SkillContext = {
+ skill: SkillModule;
+ skillDirectory: string;
+ parentDirectoryName: string;
+ frontmatter: Record<string, unknown>;
+ body: string;
+ bodyLines: string[];
+ referencedBodyFiles: string[];
+ dependencyTools: string[];
+ unknownFrontmatterFields: string[];
+ metadata: unknown;
+ metadataEntries: [string, unknown][];
+ allowedTools: unknown;
+};
+export type SkillValidator = {
+ check: (context: SkillContext) => boolean;
+ errorMessageGenerator: (context: SkillContext) => string;
+ errorType: ValidationError['level'];
+};
+export declare const allowedFrontmatterFields: Set<string>;
+export declare const isRecord: (value: unknown) => value is Record<string, unknown>;
+export declare const skillValidationRules: SkillValidator[];
+export declare const buildUnknownFrontmatterFieldValidators: (context: SkillContext) => SkillValidator[];
+export declare const buildMetadataValueValidators: (context: SkillContext) => SkillValidator[];
+export declare const buildReferencedFileValidators: (context: SkillContext) => SkillValidator[];
+export declare const createAlwaysFailValidator: (errorType: ValidationError["level"], errorMessageGenerator: () => string) => SkillValidator;
+//# sourceMappingURL=skill-file-rules.d.ts.map
\ No newline at end of file