UNPKG

svelte-command-palette

Version:

#### Increase your productivity exponentially. 🚀🚀

69 lines (62 loc) • 1.77 kB
import type createActionMap from '../utils/createActionMap'; import type createStoreMethods from '../utils/createStoreMethods'; export type ActionId = number | string | null; export type onRunParams = { action: action; storeProps: storeParams; storeMethods: ReturnType<typeof createStoreMethods>; }; export type action = { actionId?: ActionId; canActionRun?: (args: onRunParams) => boolean; title: string; description?: string; subTitle?: string; onRun?: (args: onRunParams) => void; keywords?: Array<string>; shortcut?: string; }; export type commands = Array<action>; export interface storeParams { isVisible: boolean; textInput: string; commands: commands; storeMethods: ReturnType<typeof createStoreMethods>; actionMap: ReturnType<typeof createActionMap>; activeCommandId: ActionId; selectedCommandId: ActionId; calledActions: Array<ActionId>; results: commands; [key: string]: any; } export interface actionMap { [key: ActionId]: action; } export interface shortCutMap { [key: string]: (event: KeyboardEvent) => void; } export type className = string | null; export type cssStyle = string | null; export interface themeContext { inputClass: className; overlayClass: className; paletteWrapperInnerClass: className; resultsContainerClass: className; resultContainerClass: className; optionSelectedClass: className; titleClass: className; subtitleClass: className; descriptionClass: className; keyboardButtonClass: className; unstyled: boolean; inputStyle; overlayStyle: cssStyle; paletteWrapperInnerStyle: cssStyle; resultsContainerStyle: cssStyle; resultContainerStyle: cssStyle; optionSelectedStyle: cssStyle; titleStyle: cssStyle; subtitleStyle: cssStyle; descriptionStyle: cssStyle; keyboardButtonStyle: cssStyle; }