import { OnInit, OnChanges, SimpleChanges, EventEmitter, ComponentRef } from "@angular/core";
import * as moment_ from 'moment';
import { ControlValueAccessor } from "@angular/forms";
import { NpInput } from "../../input";
import { NpDatePickerService, YearData } from "../date-picker.service";
import { NpDatePickerPopup } from "../components/date-picker-popup";
/**
 * Year picker组件
 */
export declare class NpYearPicker implements OnInit, OnChanges, ControlValueAccessor {
    private datePickerService;
    /**标签 */
    label: string;
    /**是否必填，true仅在标签前面添加红色*号， false不加*/
    isRequired: boolean;
    /**Placeholder */
    placeholder: string;
    /**校验错误时显示错误信息 */
    errorMessage: string;
    /**是否禁用 */
    isDisabled: boolean;
    /**已选时间 */
    date: moment_.Moment | string;
    /**时间展示格式 */
    format: string;
    onYearChanged: EventEmitter<any>;
    onYearClicked: EventEmitter<YearData>;
    yearPickerInput: NpInput;
    datePickerPopupRef: ComponentRef<NpDatePickerPopup>;
    private overlayRef;
    isHover: boolean;
    private emitChange;
    /**日期输入框文本值，每当this.date改变时此值会同步改变*/
    value: string;
    constructor(datePickerService: NpDatePickerService);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    onToggleDatePickerPopup(): void;
    onBlur(data: {
        value: any;
        event: any;
    }): void;
    onClear(): void;
    onMouseenter(): void;
    onMouseleave(): void;
    /**每次this.date改变时，这个方法都必须要调用 */
    private syncValue;
    private closePopup;
    private subscribeNotifyEvents;
    private emitDataAndClosePopup;
    writeValue(obj: any): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
}
