carbon-components-angular
Version:
Next generation components
137 lines (133 loc) • 4.47 kB
TypeScript
/**
*
* carbon-angular v0.0.0 | select.component.d.ts
*
* Copyright 2014, 2024 IBM
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { AfterViewInit, ElementRef, EventEmitter, TemplateRef } from "@angular/core";
import { ControlValueAccessor } from "@angular/forms";
import * as i0 from "@angular/core";
/**
* `cds-select` provides a styled `select` component. Get started with importing the module:
*
* ```typescript
* import { SelectModule } from 'carbon-components-angular';
* ```
*
* ```html
* <cds-select [(ngModel)]="model">
* <option value="default" disabled selected hidden>Choose an option</option>
* <option value="option1">Option 1</option>
* <option value="option2">Option 2</option>
* <option value="option3">Option 3</option>
* </cds-select>
* ```
*
* [See demo](../../?path=/story/components-select--basic)
*/
export declare class Select implements ControlValueAccessor, AfterViewInit {
/**
* Tracks the total number of selects instantiated. Used to generate unique IDs
*/
static selectCount: number;
/**
* `inline` or `default` select displays
*/
display: "inline" | "default";
/**
* Label for the select. Appears above the input.
*/
label: string | TemplateRef<any>;
/**
* Optional helper text that appears under the label.
*/
helperText: string | TemplateRef<any>;
/**
* Sets the invalid text.
*/
invalidText: string | TemplateRef<any>;
/**
* Set to `true` to show a warning (contents set by warningText)
*/
warn: boolean;
/**
* Sets the warning text
*/
warnText: string | TemplateRef<any>;
/**
* Sets the unique ID. Defaults to `select-${total count of selects instantiated}`
*/
id: string;
/**
* Number input field render size
*/
size: "sm" | "md" | "lg";
/**
* Set to true to disable component.
*/
disabled: boolean;
/**
* Set to true for a loading select.
*/
skeleton: boolean;
/**
* Set to `true` for an invalid select component.
*/
invalid: boolean;
/**
* @deprecated since v5 - Use `cdsLayer` directive instead
* `light` or `dark` select theme
*/
theme: "light" | "dark";
ariaLabel: string;
valueChange: EventEmitter<any>;
select: ElementRef;
set value(v: any);
get value(): any;
protected _value: any;
ngAfterViewInit(): void;
/**
* Receives a value from the model.
*/
writeValue(obj: any): void;
/**
* Registers a listener that notifies the model when the control updates
*/
registerOnChange(fn: any): void;
/**
* Registers a listener that notifies the model when the control is blurred
*/
registerOnTouched(fn: any): void;
/**
* Sets the disabled state through the model
*/
setDisabledState(isDisabled: boolean): void;
/**
* Handles the change event from the `select`.
* Sends events to the change handler and emits a `selected` event.
*/
onChange(event: any): void;
/**
* Listens for the host blurring, and notifies the model
*/
focusOut(): void;
isTemplate(value: any): boolean;
/**
* placeholder declarations. Replaced by the functions provided to `registerOnChange` and `registerOnTouched`
*/
protected onChangeHandler: (_: any) => void;
protected onTouchedHandler: () => void;
static ɵfac: i0.ɵɵFactoryDeclaration<Select, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<Select, "cds-select, ibm-select", never, { "display": "display"; "label": "label"; "helperText": "helperText"; "invalidText": "invalidText"; "warn": "warn"; "warnText": "warnText"; "id": "id"; "size": "size"; "disabled": "disabled"; "skeleton": "skeleton"; "invalid": "invalid"; "theme": "theme"; "ariaLabel": "ariaLabel"; "value": "value"; }, { "valueChange": "valueChange"; }, never, ["*"], false>;
}