import { ChangeDetectorRef, ElementRef } from '@angular/core'; import { ControlValueAccessor, NgControl } from '@angular/forms'; import { CanColor } from '@angular/material/core'; import * as i0 from "@angular/core"; declare const _DenseOutlineSelectMixinBase: import("@angular/material/core/common-behaviors/constructor").Constructor & import("@angular/material/core/common-behaviors/constructor").AbstractConstructor & { new (_elementRef: ElementRef): { _elementRef: ElementRef; }; }; /** * Select component that has fixed styling to make it compact and use the outline appearance. * This wraps a mat-select and provides limited options. * * @author Will Davis */ export declare class MtnaDenseOutlineSelectComponent extends _DenseOutlineSelectMixinBase implements CanColor, ControlValueAccessor { _control: NgControl; private _changeDetectorRef; /** Accessible label for the select. */ ariaLabel: string; /** Options for the select component. The `value` is used for the option's value attribute. The display is used for the option's display. */ options: { value: string; display: string; }[]; /** Classes to be passed to the select panel. Supports the same syntax as `ngClass`. */ panelClass: string | string[] | Set | { [key: string]: unknown; } | null | undefined; /** Placeholder for the select. */ placeholder: string; /** Optional icon to use within the form field's matPrefix. */ prefixIcon: string | undefined; /** Value of the select control. The selected option's value. */ get value(): string | undefined; set value(newValue: string | undefined); private _value; /** `View -> model callback called when value changes` */ _onChange: (value: unknown) => void; /** `View -> model callback called when select has been touched` */ _onTouched: () => void; constructor(_control: NgControl, _changeDetectorRef: ChangeDetectorRef, _elementRef: ElementRef); /** * Saves a callback function to be invoked when the select's value * changes from user input. Part of the ControlValueAccessor interface * required to integrate with Angular's core forms API. * * @param fn Callback to be triggered when the value changes. */ registerOnChange(fn: (value: unknown) => void): void; /** * Saves a callback function to be invoked when the select is blurred * by the user. Part of the ControlValueAccessor interface required * to integrate with Angular's core forms API. * * @param fn Callback to be triggered when the component has been touched. */ registerOnTouched(fn: () => void): void; /** * Sets the select's value. Part of the ControlValueAccessor interface * required to integrate with Angular's core forms API. * * @param value New value to be written to the model. */ writeValue(value: string | undefined): void; _emitChangeEvent(newValue: string | undefined): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};