import { Node } from './Node';
export declare class Code extends Node {
    private literals;
    private placeholders;
    constructor(literals: TemplateStringsArray, placeholders: any[]);
    /**
     * Returns the code with any necessary import statements prefixed.
     *
     * `path` is the intended file name of this code; it is used to know whether we
     * can skip import statements that would important from our own file.
     *
     * This method will also use any local `.prettierrc` settings, hence needs
     * to return a `Promise<String>`.
     */
    toStringWithImports(path?: string): Promise<string>;
    /**
     * Returns the formatted code, without any imports.
     *
     * Note that we don't use `.prettierrc` b/c that requires async I/O to resolve.
     */
    toString(): string;
    get childNodes(): unknown[];
    toCodeString(): string;
    private deepFindImports;
    private generateCode;
}
export declare function deepGenerate(object: unknown): string;
