UNPKG

@restnfeel/agentc-starter-kit

Version:

한국어 기업용 CMS 모듈 - Task Master AI와 함께 빠르게 웹사이트를 구현할 수 있는 재사용 가능한 컴포넌트 시스템

74 lines 2.81 kB
import { SiteTemplate, TemplateLibrary, TemplateCategory } from "@/types/templates"; import { Prisma } from "@prisma/client"; export declare const templates: SiteTemplate[]; export declare const templateCategories: { id: TemplateCategory; name: string; description: string; icon: string; }[]; export declare const templateLibrary: TemplateLibrary; export declare class TemplateManager { private templates; constructor(templates: SiteTemplate[]); getById(id: string): SiteTemplate | undefined; getBySlug(slug: string): SiteTemplate | undefined; getByCategory(category: TemplateCategory): SiteTemplate[]; getFreeTemplates(): SiteTemplate[]; getPremiumTemplates(): SiteTemplate[]; getActiveTemplates(): SiteTemplate[]; getPublicTemplates(): SiteTemplate[]; search(query: string): SiteTemplate[]; filter(options: { category?: TemplateCategory; pricing?: "FREE" | "PREMIUM" | "ENTERPRISE"; features?: string[]; tags?: string[]; search?: string; }): SiteTemplate[]; sort(templates: SiteTemplate[], sortBy: "name" | "popularity" | "rating" | "date", order?: "asc" | "desc"): SiteTemplate[]; getRecommendations(currentTemplate?: SiteTemplate, limit?: number): SiteTemplate[]; getStats(): { total: number; active: number; free: number; premium: number; categories: Record<TemplateCategory, number>; }; } export declare const templateManager: TemplateManager; export declare const getTemplateById: (id: string) => SiteTemplate; export declare const getTemplateBySlug: (slug: string) => SiteTemplate; export declare const getTemplatesByCategory: (category: TemplateCategory) => SiteTemplate[]; export declare const searchTemplates: (query: string) => SiteTemplate[]; export declare const filterTemplates: (options: Parameters<typeof templateManager.filter>[0]) => SiteTemplate[]; export declare const getTemplateStats: () => { total: number; active: number; free: number; premium: number; categories: Record<TemplateCategory, number>; }; export declare const createSiteFromTemplate: (templateId: string, siteData: { name: string; slug: string; domain?: string; }) => { name: string; slug: string; domain: string; templateId: string; templateData: Prisma.InputJsonValue; settings: Prisma.InputJsonValue; sections: { type: import("@/types/templates").SectionType; name: string; content: Prisma.InputJsonValue; styles: Prisma.InputJsonValue; order: number; isVisible: boolean; isPublished: boolean; }[]; }; export declare const cloneTemplate: (templateId: string, newData: Partial<SiteTemplate>) => SiteTemplate; //# sourceMappingURL=index.d.ts.map