UNPKG

@tanstack/angular-table

Version:

Headless UI for building powerful tables & datagrids for Angular.

50 lines (49 loc) 2.04 kB
import { FlexRenderComponentRef } from './flex-render-component-ref'; import { EmbeddedViewRef, TemplateRef, Type } from '@angular/core'; import type { FlexRenderContent } from '../flex-render'; import { FlexRenderComponent } from './flex-render-component'; export type FlexRenderTypedContent = { kind: 'null'; } | { kind: 'primitive'; content: string | number | Record<string, any>; } | { kind: 'flexRenderComponent'; content: FlexRenderComponent<unknown>; } | { kind: 'templateRef'; content: TemplateRef<unknown>; } | { kind: 'component'; content: Type<unknown>; }; export declare function mapToFlexRenderTypedContent(content: FlexRenderContent<any>): FlexRenderTypedContent; export declare abstract class FlexRenderView<TView extends FlexRenderComponentRef<any> | EmbeddedViewRef<unknown> | null> { #private; readonly view: TView; protected constructor(initialContent: Exclude<FlexRenderTypedContent, { kind: 'null'; }>, view: TView); get previousContent(): FlexRenderTypedContent; get content(): FlexRenderTypedContent; set content(content: FlexRenderTypedContent); abstract updateProps(props: Record<string, any>): void; abstract dirtyCheck(): void; abstract onDestroy(callback: Function): void; } export declare class FlexRenderTemplateView extends FlexRenderView<EmbeddedViewRef<unknown>> { constructor(initialContent: Extract<FlexRenderTypedContent, { kind: 'primitive' | 'templateRef'; }>, view: EmbeddedViewRef<unknown>); updateProps(props: Record<string, any>): void; dirtyCheck(): void; onDestroy(callback: Function): void; } export declare class FlexRenderComponentView extends FlexRenderView<FlexRenderComponentRef<unknown>> { constructor(initialContent: Extract<FlexRenderTypedContent, { kind: 'component' | 'flexRenderComponent'; }>, view: FlexRenderComponentRef<unknown>); updateProps(props: Record<string, any>): void; dirtyCheck(): void; onDestroy(callback: Function): void; }