/**
 * Import/Export utilities for Netscape Bookmark Format
 *
 * Netscape format is an HTML-based format used by most browsers.
 * Our system has a 3-level hierarchy: Folder → Group → Bookmark
 *
 * Import strategies for deeper nesting:
 * - 'flatten': All nested folders beyond depth 2 become groups
 * - 'skip': Skip bookmarks in folders deeper than supported depth
 * - 'root': Place deeper bookmarks in a root-level folder
 */
import type { Bookmark, Folder, Group, Workspace } from '@app/shared';
import type { JsonExportFormat } from '@app/shared';
import type { Database } from 'sql.js';
export type ImportStrategy = 'flatten' | 'skip' | 'root';
export interface ImportOptions {
    strategy: ImportStrategy;
    rootFolderName?: string;
}
export interface ImportResult {
    foldersCreated: number;
    groupsCreated: number;
    bookmarksCreated: number;
    bookmarksSkipped: number;
    warnings: string[];
}
/**
 * Export bookmarks to Netscape format
 */
export declare function exportToNetscape(workspaces: Workspace[], folders: Folder[], groups: Group[], bookmarks: Bookmark[]): string;
/**
 * Import bookmarks from Netscape format
 */
export declare function importFromNetscape(db: Database, userId: string, html: string, options: ImportOptions): Promise<ImportResult>;
/**
 * Export all user data to JSON format with full hierarchy
 */
export declare function exportToJson(workspaces: Workspace[], folders: Folder[], groups: Group[], bookmarks: Bookmark[]): JsonExportFormat;
/**
 * Import data from JSON format
 */
export declare function importFromJson(db: Database, userId: string, data: JsonExportFormat): Promise<ImportResult>;
