import { ContentTypesXml, Length } from '../../mod.js'; import { Archive } from '../classes/Archive.js'; import { XmlFileWithContentTypes } from '../classes/XmlFile.js'; import { FileMime } from '../enums.js'; import { File, RelationshipsXml } from './RelationshipsXml.js'; export declare type SettingsI = { isTrackChangesEnabled: boolean; /** * When set to `true`, the file will use different headers between odd and even pages, or leave them * empty. When set to `false`, odd and even pages will get the same header (the one set for "odd"). * * Defaults to `false` */ evenAndOddHeaders: boolean; attachedTemplate: string | null; defaultTabStop: Length | null; }; export declare class SettingsXml extends XmlFileWithContentTypes { #private; static contentType: FileMime; readonly relationships: RelationshipsXml; constructor(location: string, relationships?: RelationshipsXml, settings?: Partial); /** * Set a setting. */ set(key: Key, value: SettingsI[Key]): void; /** * Get a setting. */ get(key: Key): SettingsI[Key]; /** * Returns a list of setting key values (similar to `Object.entries`). Useful for cloning these * settings into a new instance. */ entries(): [keyof SettingsI, string | boolean | Length | null][]; protected toNode(): Document; /** * Get all XmlFile instances related to this one, including self. This helps the system * serialize itself back to DOCX fullly. Probably not useful for consumers of the library. * * By default only returns the instance itself but no other related instances. */ getRelated(): File[]; /** * Instantiate this class by looking at the DOCX XML for it. */ static fromArchive(archive: Archive, contentTypes: ContentTypesXml, location: string): Promise; }