Files
n8n-nodes-gwezz-changdunovel/node_modules/@n8n/node-cli/dist/template/templates/index.ts
2025-10-26 23:10:15 +08:00

36 lines
1001 B
TypeScript

import { customTemplate } from './declarative/custom/template';
import { githubIssuesTemplate } from './declarative/github-issues/template';
import { exampleTemplate } from './programmatic/example/template';
export const templates = {
declarative: {
githubIssues: githubIssuesTemplate,
custom: customTemplate,
},
programmatic: {
example: exampleTemplate,
},
} as const;
export type TemplateMap = typeof templates;
export type TemplateType = keyof TemplateMap;
export type TemplateName<T extends TemplateType> = keyof TemplateMap[T];
export function getTemplate<T extends TemplateType, N extends TemplateName<T>>(
type: T,
name: N,
): TemplateMap[T][N] {
return templates[type][name];
}
export function isTemplateType(val: unknown): val is TemplateType {
return typeof val === 'string' && val in templates;
}
export function isTemplateName<T extends TemplateType>(
type: T,
name: unknown,
): name is TemplateName<T> {
return typeof name === 'string' && name in templates[type];
}