parse-literals
Version:
Parse template literals from code
19 lines (18 loc) • 513 B
TypeScript
export interface Template {
tag?: string;
parts: TemplatePart[];
}
export interface TemplatePart {
text: string;
start: number;
end: number;
}
export interface Strategy<N = any> {
getRootNode(source: string, fileName?: string): N;
walkNodes(parent: N, visit: (child: N) => void): void;
isTaggedTemplate(node: N): boolean;
getTagText(node: N): string;
getTaggedTemplateTemplate(node: N): N;
isTemplate(node: N): boolean;
getTemplateParts(node: N): TemplatePart[];
}