import * as Schema from "effect/Schema"; import { WORKSPACE_SCOPES } from "../workspace/scope.js"; export declare const KNOWLEDGE_QUERY_CONTRACT_VERSION = "axm-knowledge-query-v1"; export declare const KNOWLEDGE_DISCOVERY_OPERATIONS: readonly ["resolve", "search", "query", "get", "related", "status"]; export declare const KNOWLEDGE_QUERY_OPERATORS: readonly ["term", "phrase", "literal", "equals", "not-equals", "contains"]; export declare const KNOWLEDGE_SEARCHABLE_FIELDS: readonly ["bundle", "conceptId", "title", "description", "tag", "type", "body", "resource", "status", "staleAfter", "generated", "verified", "trust"]; export declare const KNOWLEDGE_METADATA_FILTER_FIELDS: readonly ["bundle", "conceptId", "kind", "title", "description", "tag", "type", "resource"]; export declare const KNOWLEDGE_LIFECYCLE_FILTER_FIELDS: readonly ["status", "staleAfter", "generated", "verified", "trust"]; export declare const KnowledgeTextClauseSchema: Schema.Union; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"phrase">; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"literal">; readonly value: Schema.NonEmptyString; }>]>; export type KnowledgeTextClause = typeof KnowledgeTextClauseSchema.Type; export declare const KnowledgeQueryClauseSchema: Schema.Union; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"phrase">; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"literal">; readonly value: Schema.NonEmptyString; }>]>, Schema.Struct<{ readonly kind: Schema.Literal<"field">; readonly field: Schema.Literals; readonly clause: Schema.Union; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"phrase">; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"literal">; readonly value: Schema.NonEmptyString; }>]>; }>, Schema.Struct<{ readonly kind: Schema.Literal<"metadata">; readonly field: Schema.Literals; readonly operator: Schema.Literals; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"lifecycle">; readonly field: Schema.Literals; readonly operator: Schema.Literals; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"property">; readonly pointer: Schema.NonEmptyString; readonly operator: Schema.Literals; readonly value: Schema.NonEmptyString; }>]>; export type KnowledgeQueryClause = typeof KnowledgeQueryClauseSchema.Type; export declare const KnowledgeQuerySchema: Schema.Struct<{ readonly version: Schema.Literal<"axm-knowledge-query-v1">; readonly scope: Schema.Literals; readonly clauses: Schema.$Array; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"phrase">; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"literal">; readonly value: Schema.NonEmptyString; }>]>, Schema.Struct<{ readonly kind: Schema.Literal<"field">; readonly field: Schema.Literals; readonly clause: Schema.Union; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"phrase">; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"literal">; readonly value: Schema.NonEmptyString; }>]>; }>, Schema.Struct<{ readonly kind: Schema.Literal<"metadata">; readonly field: Schema.Literals; readonly operator: Schema.Literals; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"lifecycle">; readonly field: Schema.Literals; readonly operator: Schema.Literals; readonly value: Schema.NonEmptyString; }>, Schema.Struct<{ readonly kind: Schema.Literal<"property">; readonly pointer: Schema.NonEmptyString; readonly operator: Schema.Literals; readonly value: Schema.NonEmptyString; }>]>>; readonly ordering: Schema.Literals; readonly resultLimit: Schema.Number; readonly passageLimit: Schema.Number; readonly passageLength: Schema.Number; readonly cursor: Schema.optional; }>; export type KnowledgeQuery = typeof KnowledgeQuerySchema.Type; export declare const makeKnowledgeQuery: (scope: (typeof WORKSPACE_SCOPES)[number], clauses: ReadonlyArray, options?: { readonly ordering?: "relevance" | "metadata"; readonly resultLimit?: number; readonly passageLimit?: number; readonly passageLength?: number; readonly cursor?: string; }) => KnowledgeQuery; /** The cursor and bounds do not change which candidates a canonical query denotes. */ export declare const knowledgeQueryIdentity: (query: KnowledgeQuery) => unknown; //# sourceMappingURL=knowledge-query.d.ts.map