/** * Configurable base component class * * @abstract * @template {Partial>} [ConfigurationType=ObjectNested] * @template {HTMLElement} [RootElementType=HTMLElement] * @augments {Component} */ export class ConfigurableComponent> = ObjectNested, RootElementType extends HTMLElement = HTMLElement> extends Component { /** * Constructs a new component, validating that NHS.UK frontend is supported * * @param {Element | null} $root - HTML element to use for component * @param {Partial} [config] - HTML element to use for component */ constructor($root: Element | null, config?: Partial); /** * @type {ConfigurationType} */ config: ConfigurationType; /** * Config override * * It should take a subset of configuration as input and return * a new configuration object with properties that should be * overridden based on the root element's dataset * * @abstract * @param {Partial} _datasetConfig - Config specified by dataset * @returns {Partial} Config to override by dataset */ configOverride(_datasetConfig?: Partial): Partial; } import type { ObjectNested } from './common/configuration/index.mjs'; import { Component } from './component.mjs'; //# sourceMappingURL=configurable-component.d.mts.map