import GC from '@grapecity/spread-sheets';
import { CellEditorContext } from '../types';
import './drop-list-styles.scss';
export declare class DropListCellType extends GC.Spread.Sheets.CellTypes.Base {
    items: string[];
    multiple: boolean;
    dataValidator: GC.Spread.Sheets.DataValidation.DefaultDataValidator | null;
    constructor();
    fromJSON(settings: any): void;
    toJSON(): any;
    createEditorElement(context?: CellEditorContext): HTMLDivElement;
    updateEditor(editorContext: HTMLElement, cellStyle: GC.Spread.Sheets.Style, cellRect: GC.Spread.Sheets.Rect, context?: CellEditorContext): GC.Spread.Sheets.Rect;
    isEditingValueChanged(oldValue: unknown, newValue: unknown): boolean;
    getHitInfo(x: number, y: number, cellStyle: GC.Spread.Sheets.Style, cellRect: GC.Spread.Sheets.Rect, context?: any): GC.Spread.Sheets.IHitTestCellTypeHitInfo;
    processMouseMove(hitInfo: GC.Spread.Sheets.IHitTestCellTypeHitInfo): boolean;
    processMouseUp(hitInfo: GC.Spread.Sheets.IHitTestCellTypeHitInfo): boolean;
    paint(ctx: CanvasRenderingContext2D, value: any, x: number, y: number, w: number, h: number, style: GC.Spread.Sheets.Style, context?: any): void;
    getDataValidator(): GC.Spread.Sheets.DataValidation.DefaultDataValidator;
    static createDropList(items: string[], multiple: boolean): DropListCellType;
}
