import '@jsii/check-node/run'; import { Documentable } from '../lib'; export interface JsiiQueryOptions { readonly fileName: string; readonly expressions: QExpr[]; readonly closure?: boolean; readonly returnTypes?: boolean; readonly returnMembers?: boolean; } export declare function jsiiQuery(options: JsiiQueryOptions): Promise; export declare class Predicate { private readonly fn; constructor(expr?: string); apply(context: Record): boolean; } type QExpr = QSelect | QFilter; /** * Select adds elements */ interface QSelect { readonly op: 'select'; readonly kind: ApiKind; readonly expression?: string; } /** * Filter retains elements */ interface QFilter { readonly op: 'filter'; readonly remove: boolean; readonly kind: ApiKind; readonly expression?: string; } export declare function parseExpression(expr: string): QExpr; export declare function renderElement(el: ApiElement): string; export declare function renderDocs(el: ApiElement): string; declare const VALID_KINDS: readonly ["type", "interface", "class", "enum", "struct", "member", "property", "method", "initializer"]; type ApiKind = (typeof VALID_KINDS)[number]; type ApiElement = Documentable; export {}; //# sourceMappingURL=jsii-query.d.ts.map