import { ViewType } from '@oinone/kunlun-meta';
import { DslDefinition } from '@oinone/kunlun-dsl';
import { CSSStyle } from '@oinone/kunlun-shared';
import { FlexColMode } from '@oinone/kunlun-vue-ui-common';
import { PropType } from 'vue';
export interface rowProps {
    align?: string;
    gutter: number[];
    justify?: string;
    flexLayout?: string;
    flexDirection?: string;
    wrap?: boolean;
    cols: number;
    style?: CSSStyle;
}
export interface colProps {
    offset: number;
    span: number;
    mode?: FlexColMode;
    width: string;
    minWidth: string;
    maxWidth: string;
    style?: CSSStyle;
}
export declare const ColStyleComponent: import("vue").DefineComponent<{
    colStyle: PropType<CSSStyle>;
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    colStyle: PropType<CSSStyle>;
}>>, {}>;
export declare class RowHelper {
    private customDefaultGutter;
    private isCard;
    private defaultWidget;
    private rowProps;
    private widget;
    constructor(rowDsl: DslDefinition, parentCols?: number);
    fetchRowStyle(): CSSStyle;
    private computeStyle;
    getRowProps(): rowProps;
    private getDefaultGutters;
    private defaultGutter;
    private getAlign;
    private getGutter;
    private getJustify;
    private getFlexLayout;
    private getFlexDirection;
    private getWrap;
    private getCols;
    private getDefaultCols;
    private getStyle;
}
export declare class ColHelper {
    private rowHelper;
    private colProps;
    private viewType;
    private widget;
    constructor(rowHelper: RowHelper, colDsl: DslDefinition, viewType?: ViewType);
    fetchColStyle(): CSSStyle;
    private computeStyle;
    /**
     * 根据span和gutter计算flex样式
     * @returns
     */
    calculateFlex(span: any, gutter: number[]): string;
    calculateContainerFlex(span: any, gutter: number[], mode?: FlexColMode): string;
    calculateMarginLeft(gutter: any, offset: number): string;
    calculateFinalGutter(gutter: number[]): number;
    getColProps(): colProps;
    private getOffset;
    private getSpan;
    private getMode;
    private getWidth;
    private getMinWidth;
    private getMaxWidth;
    private getStyle;
}
