import { SwatchItem } from "./SwatchItem"; import { ProductBrand } from "./ProductBrand"; import { CBARAssetType, CBARSurfaceType } from "../CBARTypes"; import { TiledGridType } from "../assets"; import { DetailsConfig } from "cambrian-base"; export declare class MonitoredArray extends Array { constructor(onChange: () => void, ...data: T[]); } export declare abstract class DataItem implements SwatchItem { dataUrl?: string | undefined; constructor(dataUrl?: string | undefined); fetch(): Promise | undefined; load(json: any): void; abstract get parent(): DataItem | undefined; abstract get brand(): ProductBrand; get hasColumns(): boolean; get children(): DataItem[]; key: string; enabled: boolean; protected _json?: any; get json(): any; set json(value: any); name?: string; code?: string; displayName?: string; description?: string; numChildren?: number; thumbnail?: string; color?: string; orderIndex: number; isDefault: boolean; metaData: any; protected _details: DetailsConfig | undefined; get details(): DetailsConfig | undefined; set details(value: DetailsConfig | undefined); private _assetTypes; get assetTypes(): CBARAssetType[]; set assetTypes(value: CBARAssetType[]); private _surfaceTypes; get surfaceTypes(): CBARSurfaceType[]; set surfaceTypes(value: CBARSurfaceType[]); private _patterns; get patterns(): TiledGridType[] | any[]; private _selected; get selected(): boolean; set selected(value: boolean); private _wasUpdatedTimeout; protected needsUpdate(): void; onUpdate?: (item: DataItem) => void; }