hashbrown

exposeComponent

Exposes a component by combining it with additional configuration details.

API

declare function exposeComponent<
  T extends {
    new (...args: any[]): any;
  },
>(
  component: T,
  config:  _types.Prettify <
     Omit <
       ExposedComponent <T>,
      "component" | "name" | "props" | "fallback"
    > & {
      input?:  ComponentPropSchema <T>;
      name?: string;
      fallback?:  Type <{
        partialProps?:  Signal <
           Record <
            string,
             JsonResolvedValue 
          >
        >;
      }>;
    }
  >,
):  ExposedComponent <T>;
exposeComponent
ExposedComponent<T>
@paramcomponent:
T

The Angular component to be exposed.

@paramconfig:
_types.Prettify<Omit<ExposedComponent<T>, 'component' | 'name' | 'props' | 'fallback'> & {
    input?: ComponentPropSchema<T>;
    name?: string;
    fallback?: Type<{
        partialProps?: Signal<Record<string, JsonResolvedValue>>;
    }>;
}>

The configuration object for the component, excluding the component itself.

@typeT
{
    new (...args: any[]): any;
}
@returns
ExposedComponent<T>