import { TemplateElement } from './template'; export declare const AutoWrapProps: unique symbol; export declare const BoundProps: unique symbol; export declare const ViewTemplate: unique symbol; export declare const ViewRoot: unique symbol; export declare type BoundPropDescriptor = { value: { getter: () => any; setter: (val: any) => void; } | { value: any; }; bindings: { anchor: [HTMLElement, string] | Comment; compute: Function; value: any; }[]; }; export declare type OomlInstance = { readonly [AutoWrapProps]: { [prop: string]: Function; }; readonly [BoundProps]: Map; readonly [ViewRoot]: HTMLElement; readonly [ViewTemplate]: TemplateElement; }; export declare const isPojo: (val: any) => val is object; export declare const isOomlInstance: (val: any) => val is OomlInstance; export declare const attachInstance: (inst: any, elem: HTMLElement) => void;