/**
 * EQL-S Query Parser — Parses a simple DSL into Query AST.
 *
 * Syntax overview:
 *   SELECT ?e ?name
 *   WHERE {
 *     [?e "type" "Project"]
 *     [?e "name" ?name]
 *     (?e "memberOf" ?org)
 *   }
 *   FILTER ?name != "archived"
 *   ORDER BY ?name ASC
 *   LIMIT 10
 *   OFFSET 5
 *
 * Fact patterns: [entity attr value]
 * Link patterns: (source attr target)
 * Not patterns:  NOT [entity attr value]
 * Or patterns:   OR { branch1 } { branch2 }
 * Rule calls:    ruleName(?x, ?y)
 *
 * Variables start with `?`. Strings are double-quoted.
 * Numbers are bare. Booleans: true/false.
 *
 * @module trellis/core/query
 */
import type { Query, DatalogRule } from './types.js';
export declare function parseQuery(input: string): Query;
export declare function parseRule(input: string): DatalogRule;
/**
 * Shorthand: parse a simple "find entities where" query.
 *
 * Example: `find ?e where type = "Project"`
 * Becomes: SELECT ?e WHERE { [?e "type" "Project"] }
 */
export declare function parseSimple(input: string): Query;
//# sourceMappingURL=parser.d.ts.map