import { AreaStyleMixin } from './mixin/areaStyle.js'; import TextStyleMixin from './mixin/textStyle.js'; import { LineStyleMixin } from './mixin/lineStyle.js'; import { ItemStyleMixin } from './mixin/itemStyle.js'; import GlobalModel from './Global.js'; import { ModelOption } from '../util/types.js'; interface Model extends LineStyleMixin, ItemStyleMixin, TextStyleMixin, AreaStyleMixin { } declare class Model { parentModel: Model; ecModel: GlobalModel; option: Opt; constructor(option?: Opt, parentModel?: Model, ecModel?: GlobalModel); init(option: Opt, parentModel?: Model, ecModel?: GlobalModel, ...rest: any): void; /** * Merge the input option to me. */ mergeOption(option: Opt, ecModel?: GlobalModel): void; get(path: R, ignoreParent?: boolean): Opt[R]; get(path: readonly [R], ignoreParent?: boolean): Opt[R]; get(path: readonly [R, S], ignoreParent?: boolean): Opt[R][S]; get(path: readonly [R, S, T], ignoreParent?: boolean): Opt[R][S][T]; getShallow(key: R, ignoreParent?: boolean): Opt[R]; getModel(path: R, parentModel?: Model): Model; getModel(path: readonly [R], parentModel?: Model): Model; getModel(path: readonly [R, S], parentModel?: Model): Model; getModel(path: readonly [Ra] | readonly [Rb, S], parentModel?: Model): Model | Model; getModel(path: readonly [R, S, T], parentModel?: Model): Model; /** * If model has option */ isEmpty(): boolean; restoreData(): void; clone(): Model; parsePath(path: string | readonly string[]): readonly string[]; resolveParentPath(path: readonly string[]): string[]; isAnimationEnabled(): boolean; private _doGet; } export default Model;