import { type CSSProperties, type ExtractPropTypes, type PropType } from 'vue';
import type { Key, VueNode } from '../_util/type';
export interface MasonryItemType<T = any> {
    key: Key;
    column?: number;
    height?: number;
    children?: VueNode;
    data: T;
}
export declare const masonryItemProps: () => {
    prefixCls: StringConstructor;
    item: PropType<MasonryItemType<any>>;
    style: PropType<CSSProperties>;
    className: StringConstructor;
    index: NumberConstructor;
    column: NumberConstructor;
    onResize: PropType<() => void>;
    itemRender: PropType<(options: {
        itemInfo: MasonryItemType & {
            index: number;
        };
    }) => any>;
};
export type MasonryItemProps = ExtractPropTypes<ReturnType<typeof masonryItemProps>>;
declare const MasonryItem: import("vue").DefineComponent<ExtractPropTypes<{
    prefixCls: StringConstructor;
    item: PropType<MasonryItemType<any>>;
    style: PropType<CSSProperties>;
    className: StringConstructor;
    index: NumberConstructor;
    column: NumberConstructor;
    onResize: PropType<() => void>;
    itemRender: PropType<(options: {
        itemInfo: MasonryItemType & {
            index: number;
        };
    }) => any>;
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ExtractPropTypes<{
    prefixCls: StringConstructor;
    item: PropType<MasonryItemType<any>>;
    style: PropType<CSSProperties>;
    className: StringConstructor;
    index: NumberConstructor;
    column: NumberConstructor;
    onResize: PropType<() => void>;
    itemRender: PropType<(options: {
        itemInfo: MasonryItemType & {
            index: number;
        };
    }) => any>;
}>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default MasonryItem;
