import { Column } from 'react-data-grid';
import { RowKey } from '../../../types';
import { BaseViewConfig } from './types';
import { IViewConfig, ViewMode } from '../../../contexts/DataGridContext/types';
/**
 * Gets the initial column configuration for any view.
 *
 * ## Purpose
 *
 * Generates the initial column configuration by combining:
 * 1. Initial configuration (defaultConfig) when present (from network cookies)
 * 2. Empty config when there is no defaultConfig (localStorage is not used; config comes only from network cookies)
 * 3. Column default values
 *
 * ## Configuration priority
 *
 * 1. defaultConfig (initial column configuration from network cookies)
 * 2. Column default values when there is no defaultConfig
 * @param id - Unique DataGrid identifier
 * @param columns - DataGrid columns
 * @param viewMode - Current view mode ('table' | 'cards')
 * @param defaultConfig - Initial column configuration (optional). For "table" view it is the config from each column (visible, frozen, etc.); for "cards" view it comes from cardsViewConfig.columnsConfig
 * @param viewSpecificDefaults - View-specific default values
 * @param originalViewSpecificDefaults - Original view-specific values
 * @returns Array of column configuration sorted by index
 * @example
 * // For table view
 * getInitialColumnsConfig(
 *   'my-grid',
 *   columns,
 *   'table',
 *   undefined,
 *   { frozen: false },
 *   { originalFrozen: false }
 * );
 *
 * // For cards view
 * getInitialColumnsConfig(
 *   'my-grid',
 *   columns,
 *   'cards',
 *   undefined,
 *   { showTitle: true },
 *   { originalShowTitle: true }
 * );
 */
export declare const getInitialColumnsConfig: <TRow, TSummaryRow, TViewSpecific, TOriginalViewSpecific>(id: RowKey, columns: readonly Column<TRow, TSummaryRow>[], viewMode: ViewMode, defaultConfig?: BaseViewConfig<TViewSpecific>[], viewSpecificDefaults?: TViewSpecific, originalViewSpecificDefaults?: TOriginalViewSpecific) => IViewConfig<TViewSpecific, TOriginalViewSpecific>[];
//# sourceMappingURL=getInitialColumnsConfig.d.ts.map