UNPKG

@t1mmen/srtd

Version:

Supabase Repeatable Template Definitions (srtd): 🪄 Live-reloading SQL templates for Supabase DX. Make your database changes reviewable and migrations maintainable! 🚀

44 lines (43 loc) • 1.41 kB
import EventEmitter from 'node:events'; import type { FSWatcher } from 'chokidar'; import type { ProcessedTemplateResult, TemplateStatus } from '../types.js'; declare global { var __srtd_watchers: FSWatcher[]; } export declare class TemplateManager extends EventEmitter implements Disposable { private watcher; private baseDir; private buildLog; private localBuildLog; private config; private templateCache; private cacheTimeout; private silent; private processQueue; private processingTemplate; private processing; private constructor(); [Symbol.dispose](): void; static create(baseDir: string, options?: { silent?: boolean; }): Promise<TemplateManager>; private isCacheValid; private invalidateCache; findTemplates(): Promise<string[]>; getTemplateStatus(templatePath: string): Promise<TemplateStatus>; private saveBuildLogs; private handleTemplateChange; private processTemplate; private processNextTemplate; watch(): Promise<{ close: () => Promise<void>; }>; applyTemplate(templatePath: string): Promise<ProcessedTemplateResult>; buildTemplate(templatePath: string, force?: boolean): Promise<void>; private log; processTemplates(options: { apply?: boolean; generateFiles?: boolean; force?: boolean; }): Promise<ProcessedTemplateResult>; }