import { AfterViewInit, ChangeDetectorRef, ElementRef, OnChanges, QueryList, Renderer2, SimpleChanges } from "@angular/core"; import { ComponentConfig, ConfigService } from "../../configuration"; import * as i0 from "@angular/core"; export declare class SpacingEditorComponent implements AfterViewInit, OnChanges { configService: ConfigService; renderer: Renderer2; cdRef: ChangeDetectorRef; config: ComponentConfig; details: QueryList>; componentId: string; classes: string[]; state: { [type: string]: { index: number; direction: string | undefined; magnitude: string | undefined; }; }; directions: { name: "direction"; title: string; options: { description: string; code: string; icon: string; }[]; }; magnitudes: { name: "magnitude"; title: string; options: { description: string; code: string; icon: string; }[]; }; borderDirections: { name: "direction"; title: string; options: { description: string; code: string; icon: string; }[]; }; marginMagnitudes: { options: { description: string; code: string; icon: string; }[]; name: "magnitude"; title: string; }; options: { name: string; title: string; description: string; properties: ({ name: "direction"; title: string; options: { description: string; code: string; icon: string; }[]; } | { options: { description: string; code: string; icon: string; }[]; name: "magnitude"; title: string; })[]; }[]; constructor(configService: ConfigService, renderer: Renderer2, cdRef: ChangeDetectorRef); ngOnChanges(changes: SimpleChanges): void; /** * Initialize the state of the elements upon ViewInit * (the first call to updateDetails() from ngOnChanges() does not * yet have access to these elements) */ ngAfterViewInit(): void; /** * Take the input configuration (config.classes) and parse the content * to feed the state object (which determines the state of each option). */ updateState(): void; /** * This method opens or closes the elements, depending on the classes * contained in the configuration */ updateDetails(): void; /** * Returns the activation state of a given property. * This function is called by the template to set the "checked" state * of each radio button. */ isChecked(type: 'p' | 'm' | 'border' | string, prop: 'direction' | 'magnitude', code: string): boolean; /** * Toggles the state of a given property. * This function is called by the template upon a click on a radio button. */ toggle(type: 'p' | 'm' | 'border' | string, prop: 'direction' | 'magnitude', code: string): void; /** * Update the class list and propagate the update to the config service */ updateClasses(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }