import { Cache } from './utils.js'; declare type Type = 'attribute' | 'dfn' | 'dict-member' | 'dictionary' | 'element' | 'enum-value' | 'enum' | 'event' | 'interface' | 'method' | 'typedef'; export interface DataEntry { type: Type; spec: string; shortname: string; status: 'snapshot' | 'current'; uri: string; normative: boolean; for?: string[]; } declare type SpecType = DataEntry['status'] | 'draft' | 'official'; export interface Options { fields: (keyof DataEntry)[]; spec_type: SpecType[]; types: (Type | '_IDL_' | '_CONCEPT_')[]; query?: boolean; id?: string; all?: boolean; } export interface Query { term: string; id: string; types?: (Type | '_IDL_' | '_CONCEPT_')[]; specs?: string[][]; for?: string; } interface Response { result: [string, Partial[]][]; query?: Query[]; } export declare const defaultOptions: Options; export declare const cache: Cache; export declare function search(queries?: Query[], opts?: Partial): Response; export declare function searchOne(query: Query, options?: Options): Partial[]; export {};