import { ComponentFactory } from 'preact';
type ComponentFunction<P = {}> = () => ComponentResult<P>;
type ComponentResult<P = {}> = ComponentFactory<P> | ComponentAsync<P>;
type ComponentAsync<P = {}> = Promise<ComponentFactory<P>> | Promise<{
    [index: string]: ComponentFactory<P>;
}>;
interface IOptions {
    attributes?: string[];
    events?: string[];
    formatProps?: <P = any>(props: P) => P;
    wrapComponent?: <P>(child: ComponentFactory<P>) => ComponentFactory<P>;
}
export { IOptions, ComponentFunction, ComponentResult, ComponentAsync };
