import { EventEmitter, Injector, OnChanges, QueryList, SimpleChanges, TemplateRef } from '@angular/core'; import { CoreBaseComponent } from '../common/base.component'; import { Layout } from '../common/layout'; import { PropertyGridItemComponent } from './property-grid-item.component'; import * as i0 from "@angular/core"; /** * The pane orientation of the split view. */ export declare type PropertyGridOrientation = 'vertical' | 'horizontal'; /** * * @smeDoc {@label Property Grid @id sme-property-grid-component} * * @overview * @file {@filepath ./examples/overview.md} * * @example {@label Basic Usage @id basic-usage} * @file {@filename component.html @filepath ./examples/basic-usage.component.html} * * @example {@label Vertical Orientation @id vertical-orientation} * @file {@filename component.html @filepath ./examples/vertical-orientation.component.html} * * @example {@label Item with a Link @id link-item} * @file {@filename component.html @filepath ./examples/link-item.component.html} * * @example {@label Item with a Tooltip @id tooltip-item} * @file {@filename component.html @filepath ./examples/tooltip-item.component.html} * * @example {@label Item with a Action @id action-item} * @file {@filename component.ts @filepath ./examples/action-item.component.ts} * @file {@filename component.html @filepath ./examples/action-item.component.html} * * @example {@label Item Spanning Multiple Columns @id multi-column} * @file {@filename component.html @filepath ./examples/multi-column-item.component.html} * * @example {@label Items with Status and Icons @id status-and-icons} * @file {@filename component.html @filepath ./examples/status-item.component.html} * * @example {@label Items with complex value types @id complex-value} * @file {@filename component.html @filepath ./examples/complex-values.component.html} * */ export declare class PropertyGridComponent extends CoreBaseComponent implements Layout, OnChanges { /** * The basic column width for the property grid items. */ layoutItemWidth: number; items: QueryList; readonlyTemplate: TemplateRef; actionLinkTemplate: TemplateRef; internalLinkTemplate: TemplateRef; externalLinkTemplate: TemplateRef; /** * The source name to use for logging */ protected get logSourceName(): string; /** * The orientation for the property grid */ orientation: PropertyGridOrientation; /** * Implementation of the Layout interface */ layoutChanged: EventEmitter; /** * Implementation of the Layout interface */ windowBreakpointChanged: EventEmitter; private propertyGridResponsiveWindowManager; constructor(injector: Injector, layout: Layout); stringifyValue(value: any): any; getTemplate(item: PropertyGridItemComponent): TemplateRef; ngOnChanges(changes: SimpleChanges): void; /** * It handles the undefined value won't be updated situation for async property item. * Angular issue that the property item value initialized with undefined, if after async time, the value being set is still undefined, * Angular will not be able to trigger the value on changed event. Thus we have to manually call to refresh it. * * @param index The index that needs to hard refresh. */ hardRefreshItem(index: number): void; getInternalLinkDescription(item: PropertyGridItemComponent): string; getExternalLinkDescription(item: PropertyGridItemComponent): string; /** * Creates the idBag used by this component to store unique element ids. * id values will be assigned be the @see BaseComponent super class. */ protected createIdBag(): MsftSme.StringMap; /** * Gets the initial host classes to be applied to this element */ protected getInitialHostClasses(): string[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }