import { IgcHTMLElement } from "igniteui-webcomponents-core";
import { PropertyEditorValueType } from "./PropertyEditorValueType";
import { IgcPropertyEditorDescriptionObject } from "./igc-property-editor-description-object";
import { IgcPropertyEditorDescriptionObjectCollection } from "./igc-property-editor-description-object-collection";
import { PropertyEditorPropertyDescription } from "./PropertyEditorPropertyDescription";
export declare class IgcPropertyEditorPropertyDescriptionComponent extends IgcHTMLElement {
    protected createImplementation(): PropertyEditorPropertyDescription;
    protected _implementation: any;
    /**
     * @hidden
     */
    readonly i: PropertyEditorPropertyDescription; /**
                                 * @hidden
                                 */
    static _createFromInternal(internal: any): IgcPropertyEditorPropertyDescriptionComponent;
    private onImplementationCreated;
    constructor();
    private _settingAttributes;
    protected _attached: boolean;
    private _queuedSetAttributes;
    protected _enqueueSetAttribute(attrName: string, attrValue: string): void;
    protected _flushQueuedAttributes(): void;
    protected _a(attrName: string, attrValue: any): void;
    connectedCallback(): void;
    private static _observedAttributesIgcPropertyEditorPropertyDescriptionComponent;
    static readonly observedAttributes: string[];
    private _updatingFromAttribute;
    attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
    static htmlTagName: string;
    protected static _isElementRegistered: boolean;
    static register(): void;
    propertyPath: string;
    label: string;
    valueType: PropertyEditorValueType;
    propertyDescriptionType: string;
    shouldOverrideDefaultEditor: boolean;
    elementDescriptionType: string;
    dropDownNames: string[];
    dropDownValues: string[];
    primitiveValue: any;
    complexValue: IgcPropertyEditorDescriptionObject;
    private _complexValues;
    complexValues: IgcPropertyEditorDescriptionObjectCollection;
    findByName(name: string): any;
    protected __p: string;
    protected _hasUserValues: Set<string>;
    protected readonly hasUserValues: Set<string>;
    protected __m(propertyName: string): void;
    protected _stylingContainer: any;
    protected _stylingParent: any;
    protected _inStyling: boolean;
    protected _styling(container: any, component: any, parent?: any): void;
}
