import type { Data } from '@stackpress/idea-parser'; import type { AttributesToken, ColumnToken, ColumnTypeToken } from './types.js'; import type Schema from './Schema.js'; import Attribute from './Attribute.js'; import Column from './Column.js'; import Attributes from './attribute/Attributes.js'; import Columns from './column/Columns.js'; import FieldsetAssertion from './fieldset/FieldsetAssertion.js'; import FieldsetComponent from './fieldset/FieldsetComponent.js'; import FieldsetDocument from './fieldset/FieldsetDocument.js'; import FieldsetName from './fieldset/FieldsetName.js'; import FieldsetType from './fieldset/FieldsetType.js'; import FieldsetValue from './fieldset/FieldsetValue.js'; export default class Fieldset { static make(name: string, attributes?: AttributesToken, columns?: Array, schema?: Schema): Fieldset; readonly assertion: FieldsetAssertion; readonly attributes: Attributes; readonly columns: Columns; readonly component: FieldsetComponent; readonly document: FieldsetDocument; readonly name: FieldsetName; readonly type: FieldsetType; readonly value: FieldsetValue; protected _schema?: Schema; get hasSchema(): boolean; get schema(): Schema; set schema(schema: Schema); constructor(name: string, attributes?: Attributes | Array, columns?: Columns | Array, schema?: Schema); addAttribute(attribute: Attribute): this; addAttribute(name: string, value: Data[] | boolean): this; addColumn(column: Column): this; addColumn(name: string, type: ColumnTypeToken, attributes?: AttributesToken): this; attribute(name: string): Attribute | undefined; column(name: string, format?: string): Column | undefined; }