@knapsack/app
Version:
Build Design Systems on top of knapsack, by Basalt
88 lines • 3.11 kB
TypeScript
import { KnapsackFile } from '@knapsack/core';
import { FileDb2 } from './dbs/file-db';
import { KnapsackPattern, KnapsackTemplateStatus, KnapsackPatternsConfig, KnapsackTemplateDemo } from '../schemas/patterns';
import { KnapsackTemplateRenderer, KsRenderResults, TemplateRendererMeta } from '../schemas/knapsack-config';
import { KnapsackDb } from '../schemas/misc';
declare type PatternsState = import('../client/store').AppState['patternsState'];
export declare class Patterns implements KnapsackDb<PatternsState> {
configDb: FileDb2<KnapsackPatternsConfig>;
dataDir: string;
templateRenderers: {
[id: string]: KnapsackTemplateRenderer;
};
byId: {
[id: string]: KnapsackPattern;
};
private assetSets;
isReady: boolean;
filePathsThatTriggerNewData: Map<string, string>;
private watcher;
cacheDir: string;
constructor({ dataDir, templateRenderers, assetSets, }: {
dataDir: string;
templateRenderers: KnapsackTemplateRenderer[];
assetSets: import('./asset-sets').AssetSets;
});
init({ cacheDir }: {
cacheDir: string;
}): Promise<void>;
get allPatterns(): KnapsackPattern[];
getRendererMeta(): {
[id: string]: {
meta: TemplateRendererMeta;
};
};
getData(): Promise<import('../client/store').AppState['patternsState']>;
savePrep(data: {
patterns: {
[id: string]: KnapsackPattern;
};
templateStatuses?: KnapsackTemplateStatus[];
}): Promise<KnapsackFile[]>;
updatePatternData(patternConfigPath: string): Promise<void>;
updatePatternsData(): Promise<void>;
getPattern(id: string): KnapsackPattern;
getPatterns(): KnapsackPattern[];
/**
* Get all the pattern's template file paths
* @return - paths to all template files
*/
getAllTemplatePaths({ templateLanguageId, includeTemplateDemos, }?: {
/**
* If provided, only templates for these languages will be provided.
* @see {import('./renderer-base').KnapsackRendererBase}
*/
templateLanguageId?: string;
includeTemplateDemos?: boolean;
}): string[];
getTemplateAbsolutePath({ patternId, templateId }: {
patternId: any;
templateId: any;
}): string;
getTemplateDemoAbsolutePath({ patternId, templateId, demoId }: {
patternId: any;
templateId: any;
demoId: any;
}): string;
getTemplateStatuses(): Promise<KnapsackTemplateStatus[]>;
/**
* Render template
*/
render({ patternId, templateId, demo, isInIframe, websocketsPort, assetSetId, }: {
patternId: string;
templateId: string;
/**
* Demo data to pass to template
* Either whole demo object OR demoId (string)
*/
demo?: KnapsackTemplateDemo | string;
/**
* Will this be in an iFrame?
*/
isInIframe?: boolean;
websocketsPort?: number;
assetSetId?: string;
}): Promise<KsRenderResults>;
}
export {};
//# sourceMappingURL=patterns.d.ts.map