UNPKG

@hadyfayed/filament-react-wrapper

Version:

Enterprise React integration for Laravel/Filament - Smart asset loading, 90%+ React-PHP function mapping, no-plugin Filament integration

24 lines 1.59 kB
import { default as React } from 'react'; import { IComponentDefinition, IComponentContext, IComponentMiddleware } from '../interfaces/IComponentRegistry'; export declare abstract class BaseComponentFactory { abstract createComponent(definition: IComponentDefinition, props: Record<string, any>): React.ComponentType<any> | null; protected applyMiddleware(component: React.ComponentType<any>, props: Record<string, any>, middleware: IComponentMiddleware[], context: IComponentContext): React.ComponentType<any>; protected validateComponent(component: any): boolean; } export declare class SynchronousComponentFactory extends BaseComponentFactory { createComponent(definition: IComponentDefinition, props?: Record<string, any>): React.ComponentType<any> | null; } export declare class AsynchronousComponentFactory extends BaseComponentFactory { private componentCache; createComponentAsync(definition: IComponentDefinition, _props?: Record<string, any>): Promise<React.ComponentType<any> | null>; createComponent(definition: IComponentDefinition, props?: Record<string, any>): React.ComponentType<any> | null; clearCache(): void; } export declare class ComponentFactoryManager { private syncFactory; private asyncFactory; createComponent(definition: IComponentDefinition, props?: Record<string, any>): React.ComponentType<any> | null; createComponentAsync(definition: IComponentDefinition, props?: Record<string, any>): Promise<React.ComponentType<any> | null>; clearAsyncCache(): void; } //# sourceMappingURL=ComponentFactory.d.ts.map