import { type CSSResultGroup, LitElement, type PropertyDeclaration, type PropertyValues } from 'lit'; declare class IFabricComponent extends LitElement { static readonly tagName: string; __connectedHooks: (() => any)[]; __disconnectedHooks: (() => any)[]; __willUpdateHooks: ((changedProps: PropertyValues) => any)[]; __updateHooks: ((changedProps: PropertyValues) => any)[]; __updatedHooks: ((changedProps: PropertyValues) => any)[]; } interface FabricConstructor { prototype: IFabricComponent; new (): IFabricComponent & { constructor: typeof IFabricComponent; }; } export type FabricComponent = InstanceType; export declare const getCurrentRef: () => (IFabricComponent & { constructor: typeof IFabricComponent; }) | undefined; export declare const component: { >>(tagName: string, create: (element: LitElement) => { render: () => unknown; styles: CSSResultGroup; }, options?: { base?: typeof LitElement; mixins?: ((...args: any[]) => any)[]; }): { register(): void; tagName: string; }; ctorRef: FabricConstructor | undefined; ref: (IFabricComponent & { constructor: typeof IFabricComponent; }) | undefined; sideEffects: WeakMap any)[]>; }; export {}; //# sourceMappingURL=component.d.ts.map