/** * SPREADSHEET EDITOR COMPONENT * React component with virtual scrolling for large grids * TASKSET 3: Integrated with Relay WebSocket for real-time collaboration * TASKSET 8.2: Variable functions (VAR, SETVAR) for unified documents */ import type { CellAddress } from '@materi.ai/frame/core/types'; import type { CellData } from '@materi.ai/frame/core/editors'; import type { SharedVariable, VariableResolver, VariableSetter } from '@materi.ai/frame/core/variables'; import React from 'react'; export interface SpreadsheetEditorProps { documentId: string; userId: string; cells?: Map; onChange?: (cells: Map) => void; readOnly?: boolean; /** Document title for sharing dialog */ documentTitle?: string; /** Whether the current user can manage sharing */ canShare?: boolean; /** User display name for presence */ userName?: string; /** User cursor color */ userColor?: string; /** WebSocket URL for collaboration (optional) */ wsUrl?: string; /** Enable real-time collaboration (default: true) */ enableCollaboration?: boolean; /** Base URL for the API (e.g., "https://api.example.com/api/v1") */ apiBaseUrl?: string; /** JWT access token for authentication */ authToken?: string; /** Shared variables for VAR() function */ variables?: SharedVariable[]; /** Variable resolver function (alternative to variables array) */ variableResolver?: VariableResolver; /** Variable setter function for SETVAR() */ variableSetter?: VariableSetter; /** Callback when a variable is set via SETVAR() */ onVariableSet?: (name: string, value: unknown, type: string) => void; /** Hide connection status in toolbar (shown externally) */ hideConnectionStatus?: boolean; /** Hide collaborators in toolbar (shown externally) */ hideCollaborators?: boolean; /** Hide share button in toolbar (shown externally) */ hideShareButton?: boolean; } export declare const SpreadsheetEditor: React.FC; export default SpreadsheetEditor; //# sourceMappingURL=SpreadsheetEditor.d.ts.map