/**
 * Legacy keyboard hook surface.
 *
 * Keyboard ownership now lives in the shared input runtime under
 * `InputProvider`. These exports remain as no-op compatibility shims
 * for callers that still mount them.
 */

'use client';

export const DEFAULT_SHORTCUTS: Record<string, string> = {
	openCommandLine: '/',
	closeCommandLine: 'Escape',
	clearSelection: 'Escape',
	copy: 'ctrl+c',
	cut: 'ctrl+x',
	paste: 'ctrl+v',
	duplicate: 'ctrl+d',
	selectAll: 'ctrl+a',
	delete: 'Delete',
	search: 'ctrl+f',
	nextSearchResult: 'Enter',
	prevSearchResult: 'shift+Enter',
	nextSearchResultAlt: 'ctrl+g',
	prevSearchResultAlt: 'ctrl+shift+g',
	mergeNodes: 'ctrl+m',
};

export interface UseGlobalKeyboardOptions {
	onDelete?: (nodeIds: string[]) => void | Promise<void>;
}

export function useGlobalKeyboard(_options?: UseGlobalKeyboardOptions): void {
	// Shared input owns all canvas keyboard listeners now.
}

export function useKeyState(_key: string): boolean {
	return false;
}
