import { TsClass } from './class'; import { Dir, FilePart } from './dir'; import { Exported } from './exported'; import { Expression } from './expression'; import { TsFunction } from './function'; import { Variable } from './variable'; export type TopLevelPart = TsClass | Expression | TsFunction | Variable | string; export declare class TsFile implements FilePart { name: string; parent?: Dir | undefined; private parts; constructor(name: string, parent?: Dir | undefined, parts?: (TopLevelPart & { exported?: Exported; })[]); append(part: TopLevelPart, exported?: Exported): this; print(): string; static create(name: string, parent?: Dir): TsFile; }