peezy-cli
Version:
Production-ready CLI for scaffolding modern applications with curated full-stack templates, intelligent migrations, and enterprise security.
47 lines (46 loc) • 1.38 kB
TypeScript
/**
* Configuration management for the Version Scrubbing Plugin
*/
import { NotificationConfig, RateLimitConfig, UpdateStrategy } from "../types/index.js";
export interface PluginConfig {
schedule: {
frequency: "daily" | "weekly" | "monthly" | "manual";
time?: string;
timezone?: string;
};
monitoring: {
runtimes: string[];
frameworks: string[];
packages: string[];
packageManagers: string[];
};
notifications: NotificationConfig;
sources: {
customEndpoints?: Record<string, string>;
rateLimits?: Record<string, RateLimitConfig>;
apiKeys?: Record<string, string>;
};
cache: {
ttl: number;
maxSize: number;
directory?: string;
};
analysis: {
defaultStrategy: UpdateStrategy;
includePrerelease: boolean;
securityOnly: boolean;
breakingChangeThreshold: "patch" | "minor" | "major";
};
integration: {
peezyCliPath?: string;
autoUpdateDocs: boolean;
createPullRequests: boolean;
githubToken?: string;
};
}
export declare function loadConfig(configPath?: string): PluginConfig;
export declare function validateConfig(config: PluginConfig): {
valid: boolean;
errors: string[];
};
export declare function createDefaultConfig(outputPath: string): void;