import { AutoCompleteFunction, SuggestResult, UnoGenerator } from "@unocss/core"; import { LRUCache } from "lru-cache"; //#region src/parse.d.ts export declare class AutocompleteParseError extends Error { readonly template?: string | undefined; constructor(message: string, template?: string | undefined); toString(): string; } export declare const shorthands: Record; export declare const ignoredThemeKeys: string[]; export declare function parseAutocomplete(template: string, theme?: any, extraShorthands?: Record): ParsedAutocompleteTemplate; //#endregion //#region src/types.d.ts export type AutoCompleteMatchType = 'prefix' | 'fuzzy'; export interface AutocompleteOptions { matchType?: AutoCompleteMatchType; throwErrors?: boolean; } export type AutocompleteTemplatePart = AutocompleteTemplateStatic | AutocompleteTemplateGroup | AutocompleteTemplateTheme; export interface AutocompleteTemplateStatic { type: 'static'; value: string; } export interface AutocompleteTemplateGroup { type: 'group'; values: string[]; } export interface AutocompleteTemplateTheme { type: 'theme'; objects: Record[]; } export interface ParsedAutocompleteTemplate { parts: AutocompleteTemplatePart[]; suggest: (input: string, matchType?: AutoCompleteMatchType) => string[] | undefined; errors: AutocompleteParseError[]; } export interface UnocssAutocomplete { suggest: (input: string, allowsEmptyInput?: boolean) => Promise; suggestInFile: (content: string, cursor: number) => Promise; templates: (string | AutoCompleteFunction)[]; cache: LRUCache; errorCache: Map; reset: () => void; enumerate: () => Promise>; } //#endregion //#region src/create.d.ts export declare function createAutocomplete(uno: UnoGenerator, options?: AutocompleteOptions): UnocssAutocomplete; //#endregion //#region src/utils.d.ts export declare function searchUsageBoundary(line: string, index: number, attributify?: boolean): { content: string; start: number; end: number; } | undefined; export declare function searchAttrKey(content: string, cursor: number): string | undefined; export declare function cartesian(arr: T[][]): T[][]; //#endregion