import * as _nuxt_schema from '@nuxt/schema';
import { Keyboard } from '../keyboard.mjs';
import { Options, KeySequence } from '@waradu/keyboard';
import { Directive } from 'vue';
import '../shared/keyboard.qu5iZOyZ.mjs';
import '../keys.mjs';

type Modifiers = "prevent" | "stop";
type Arg = KeySequence;
declare const vKeybind: Directive<HTMLElement, Options["run"], Modifiers, Arg>;

interface ModuleOptions {
    debug?: boolean | undefined;
}
declare const _default: _nuxt_schema.NuxtModule<ModuleOptions, ModuleOptions, false>;

declare module "nuxt/app" {
    interface NuxtApp {
        $keyboard: Keyboard;
    }
}
declare module "vue" {
    interface GlobalDirectives {
        vKeybind: typeof vKeybind;
    }
}
declare module "nuxt/schema" {
    interface PublicRuntimeConfig {
        keyboard: Partial<ModuleOptions>;
    }
}

export { _default as default };
export type { ModuleOptions };
