import { DataColumn, ColumnSettingSolution } from '../types';
export interface ColumnSettingSolutionAuth {
    data: {
        success: boolean;
        errorMessage: string | null;
        authOperationData: string | null;
        authOrganizationData: string[] | null;
        currentUserId: string | null;
    };
}
export interface ColumnSettingResponse {
    success?: boolean;
    errorMessage?: string | null;
    data: ColumnSettingSolution[] | null;
}
export interface ColumnSettingUpdateOptions {
    belongId: string;
    defaultId: string;
    deleteIds: string[];
}
export declare function useColumnSetting(): {
    createSolutionRequest: (solution: Partial<ColumnSettingSolution>) => Promise<void>;
    loadRequest: (belongId: string) => Promise<ColumnSettingResponse>;
    updateRequest: (solution: Partial<ColumnSettingSolution>, belongId: string) => Promise<void>;
    batchUpdateRequest: (solutions: ColumnSettingUpdateOptions) => Promise<void>;
    getAuthRequest: () => Promise<ColumnSettingSolutionAuth>;
    transformColumns: (visibleColumns: DataColumn[]) => {
        [x: string]: {
            columnFormat: {
                id: string | undefined;
                title: string;
                width: string | number;
                align: "left" | "center" | "right";
                halign: "left" | "center" | "right";
            }[];
            expandGroupRows: boolean;
            groupField: never[];
            sortInfo: {
                sortName: never[];
                sortOrder: never[];
            };
            viewColumns: string[];
        };
    };
    getDefaultSolution: (visibleColumns: DataColumn[]) => Partial<ColumnSettingSolution>;
    addSolution: (solution: Partial<ColumnSettingSolution>) => Promise<void>;
    updateSolution: (solution: ColumnSettingSolution, belongId: string) => Promise<void>;
    getFormId: () => string;
    getLocaleName: () => any;
};
