import { Construct } from './construct'; export declare namespace jsx { /** * The JSX factory function. This is what TypeScript converts a JSX statement to. * * For example: * * will produce this code: * jsx.create(Foo, { p1: 'a', p2: 2 }, []); * * This function will not actually create any objects, but rather just return a tree of * element information for later consumption by jsx.construct(tree), which can be used * to materialize an actual construct tree from. * * @param type The class * @param props Property hash * @param children Array of children * @returns element tree */ function create(type: any, props: any, ...children: any[]): { type: any; props: any; children: any[]; }; /** * Converts a JSX tree to a construct tree. * Creates all construct objects and associate them together as children. * @param tree The JSX tree * @param parent Optional parent for the construct tree * @returns A Construct object */ function construct(tree: any, parent?: Construct): Construct; }