import { Option, Set } from '@glimmer/util'; import { Reference, PathReference } from '@glimmer/reference'; import { InnerReferenceFactory } from './references/descriptors'; import { Dict } from '@glimmer/interfaces'; export interface NotifiableReference extends Reference { } export interface ChainableReference extends Reference { } export interface PathReferenceFactory { new (object: any, property: string): PathReference; } export interface RootReferenceFactory { new (object: T): RootReference; } export interface RootReference extends PathReference { update(value: T): void; referenceFromParts(parts: string[]): PathReference; chainFor(prop: string): Option>; } export interface MetaOptions { RootReferenceFactory?: RootReferenceFactory; DefaultPathReferenceFactory?: InnerReferenceFactory; } export interface Meta { root(): RootReference; referencesFor(property: string): Option>>; referenceTypeFor(property: string): InnerReferenceFactory; getReferenceTypes(): Dict>; addReference(property: string, reference: PathReference): void; removeReference(property: string, reference: PathReference): void; getSlots(): Dict; } export interface MetaLookup { for(obj: any): Meta; } //# sourceMappingURL=types.d.ts.map