import { bindingMode, ObserverLocator, InternalPropertyObserver } from 'aurelia-framework'; export type GetElementObserver = (obj: Element, propertyName: string, observerLocator: ObserverLocator, descriptor?: PropertyDescriptor | null) => InternalPropertyObserver | null; export interface MdcElementObserverAdapter { tagName: string; properties: Record; } export interface MdcElementPropertyObserver { defaultBindingMode: bindingMode; getObserver: GetElementObserver; } export declare class MdcComponentAdapters { private observerLocator; private adaptersCreated; private adapters; private bindingModeIntercepted; constructor(observerLocator: ObserverLocator); private createAdapter; private getOrCreateMdcElementAdapters; private interceptDetermineDefaultBindingMode; addMdcElementObserverAdapter(tagName: string, properties: Record): void; registerMdcElementConfig(observerAdapter: MdcElementObserverAdapter): void; }