import { ApDraggableGridItemBase } from './interface';
import { DefineComponent, ExtractPropTypes, PropType, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        item?(_: {
            item: {
                isDragging: boolean;
                isOverlay: boolean;
                span: number;
                row: number;
                col: number;
                showHeight?: number | string | undefined;
                height: number | string;
                module: string;
            };
            index: number;
        }): any;
    };
    refs: {
        gridContainer: HTMLDivElement;
    };
    rootEl: any;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: DefineComponent<ExtractPropTypes<{
    gridList: {
        type: PropType<Array<ApDraggableGridItemBase>>;
        default: () => never[];
    };
    request: {
        type: PropType<() => Promise<ApDraggableGridItemBase[]>>;
        default: null;
    };
    gridWidth: {
        type: (NumberConstructor | StringConstructor)[];
        default: string;
    };
    gridItemHeight: {
        type: NumberConstructor;
        default: number;
    };
    gridItemShadow: {
        type: StringConstructor;
        default: string;
    };
    gapWidth: {
        type: NumberConstructor;
        default: number;
    };
    disableDrag: {
        type: BooleanConstructor;
        default: boolean;
    };
    customWrapper: {
        type: StringConstructor;
        default: string;
    };
}>, {
    setGridItems: (items: ApDraggableGridItemBase[]) => void;
    getGridItems: () => ApDraggableGridItemBase[];
    refreshGrid: () => void;
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    onGridListChange: (args_0: ApDraggableGridItemBase[]) => any;
}, string, PublicProps, Readonly< ExtractPropTypes<{
    gridList: {
        type: PropType<Array<ApDraggableGridItemBase>>;
        default: () => never[];
    };
    request: {
        type: PropType<() => Promise<ApDraggableGridItemBase[]>>;
        default: null;
    };
    gridWidth: {
        type: (NumberConstructor | StringConstructor)[];
        default: string;
    };
    gridItemHeight: {
        type: NumberConstructor;
        default: number;
    };
    gridItemShadow: {
        type: StringConstructor;
        default: string;
    };
    gapWidth: {
        type: NumberConstructor;
        default: number;
    };
    disableDrag: {
        type: BooleanConstructor;
        default: boolean;
    };
    customWrapper: {
        type: StringConstructor;
        default: string;
    };
}>> & Readonly<{
    onOnGridListChange?: ((args_0: ApDraggableGridItemBase[]) => any) | undefined;
}>, {
    request: () => Promise<ApDraggableGridItemBase[]>;
    gridList: ApDraggableGridItemBase[];
    gridWidth: string | number;
    gridItemHeight: number;
    gridItemShadow: string;
    gapWidth: number;
    disableDrag: boolean;
    customWrapper: string;
}, {}, {}, {}, string, ComponentProvideOptions, true, {
    gridContainer: HTMLDivElement;
}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
