import { HoistModel, Persistable, PersistableState, PersistOptions, RenderMode } from '@xh/hoist/core'; /** * Configuration for a {@link CardModel}. A CardModel is created automatically by {@link Card} * when not provided explicitly - pass a config via the Card's `model` prop to customize. * * @see CardModel * @see Card */ export interface CardModelConfig { /** Can card be collapsed? */ collapsible?: boolean; /** Default collapsed state. */ defaultCollapsed?: boolean; /** How should collapsed content be rendered? */ renderMode?: RenderMode; /** Options governing persistence. */ persistWith?: PersistOptions; } export interface CardPersistState { collapsed?: boolean; } /** * Model for a {@link Card} - manages collapsible state and render mode for the Card's content. * Created automatically by Card when not provided - pass via the Card's `model` prop to * customize collapsibility, default state, or persistence. * * Also serves as the base class for {@link FormFieldSetModel}. * * @see CardModelConfig * @see Card */ export declare class CardModel extends HoistModel implements Persistable { config: CardModelConfig; readonly collapsible: boolean; readonly defaultCollapsed: boolean; readonly renderMode: RenderMode; collapsed: boolean; constructor({ collapsible, defaultCollapsed, renderMode, persistWith }?: CardModelConfig); setCollapsed(collapsed: boolean): void; getPersistableState(): PersistableState; setPersistableState(state: PersistableState): void; }