/**
 * @license
 * Copyright 2025 Google LLC
 * SPDX-License-Identifier: Apache-2.0
 */
import type { Config } from '@vybestack/llxprt-code-core';
import type React from 'react';
export declare const BACKSLASH_ENTER_TIMEOUT = 5;
export declare const ESC_TIMEOUT = 100;
export declare const PASTE_TIMEOUT = 50;
export declare const DRAG_COMPLETION_TIMEOUT_MS = 100;
export declare const SINGLE_QUOTE = "'";
export declare const DOUBLE_QUOTE = "\"";
export interface Key {
    name: string;
    ctrl: boolean;
    meta: boolean;
    shift: boolean;
    paste: boolean;
    sequence: string;
    insertable?: boolean;
}
export type KeypressHandler = (key: Key) => void;
interface KeypressContextValue {
    subscribe: (handler: KeypressHandler) => void;
    unsubscribe: (handler: KeypressHandler) => void;
}
export declare function useKeypressContext(): KeypressContextValue;
export declare function KeypressProvider({ children, config, }: {
    children: React.ReactNode;
    config?: Config;
}): import("react/jsx-runtime").JSX.Element;
export {};
