import { Template, TemplateFormat, OnConstructor } from "../Template"; import { TemplateFiles } from "../../types"; import { MetaAttributeValues, MetaAttributeValue } from "../../metaComponent/parseMetaHTMLAttribute"; export declare class ReactTemplate extends Template { imports: string; renderPrefix: string; render: string; renderSuffix: string; typeScript: string; constants: string; fileData: string; fragmentStrings: Required["fragmentStrings"]; reactNameReplacement: Required["reactNameReplacement"]; constructor(args: OnConstructor & ReactExtensions); setImports(): void; setTypeScript(): void; renderPropType(propId: string): string; renderRenderFunction(): void; onElement(onElement: Parameters[0]): ReturnType[0]; renderAttribute(attributeName: string, attributeValues: MetaAttributeValues): void; renderAttributeValue(attributeValue: MetaAttributeValue, inString: boolean): void; onCloseElement(onCloseElement: Parameters[0]): void; onText(onText: Parameters[0]): void; onComment(onComment: Parameters[0]): void; onVariable(variable: Parameters[0]): ReturnType; onCloseVariable(variable: Parameters[0]): void; onIf(onIf: Parameters[0]): void; onCloseIf(onCloseIf: Parameters[0]): void; onFinalise(onSerialize: Parameters[0]): TemplateFiles | undefined; serialize(): TemplateFiles; } export declare type FragmentStrings = { start: string; end: string; }; export declare type ReactExtensions = { fragmentStrings?: FragmentStrings; reactNameReplacement?: (name: string) => string; };