/**
 * @fileoverview Lightweight study count tool — no data fetched, just the total.
 * @module mcp-server/tools/definitions/get-study-count.tool
 */
import { z } from '@cyanheads/mcp-ts-core';
import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
export declare const getStudyCount: import("@cyanheads/mcp-ts-core").ToolDefinition<z.ZodObject<{
    query: z.ZodOptional<z.ZodString>;
    conditionQuery: z.ZodOptional<z.ZodString>;
    interventionQuery: z.ZodOptional<z.ZodString>;
    locationQuery: z.ZodOptional<z.ZodString>;
    sponsorQuery: z.ZodOptional<z.ZodString>;
    titleQuery: z.ZodOptional<z.ZodString>;
    outcomeQuery: z.ZodOptional<z.ZodString>;
    statusFilter: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
    phaseFilter: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
    advancedFilter: z.ZodOptional<z.ZodString>;
    includeUnknownEnrollment: z.ZodDefault<z.ZodBoolean>;
}, z.core.$strip>, z.ZodObject<{
    totalCount: z.ZodNumber;
}, z.core.$strip>, readonly [{
    readonly reason: "field_invalid";
    readonly code: JsonRpcErrorCode.ValidationError;
    readonly when: "A field name in the advanced filter or AREA[] expression is invalid (often a module name instead of a piece name).";
    readonly recovery: "Call clinicaltrials_get_field_definitions to browse the field tree; use PascalCase piece names like OverallStatus, Phase, or StudyType.";
}, {
    readonly reason: "enum_invalid";
    readonly code: JsonRpcErrorCode.ValidationError;
    readonly when: "statusFilter or phaseFilter contains a value ClinicalTrials.gov does not accept.";
    readonly recovery: "Call clinicaltrials_get_field_values with fields=[\"OverallStatus\"] or fields=[\"Phase\"] to see the valid enum values the filter accepts.";
}, {
    readonly reason: "query_parse_error";
    readonly code: JsonRpcErrorCode.ValidationError;
    readonly when: "A free-text query or advancedFilter expression uses syntax the upstream Essie parser rejects — typically `[ ]` (AREA[]-reserved) or an unmatched `(` / `)` in a query/conditionQuery/etc. value.";
    readonly recovery: "Field-scoped search uses advancedFilter with AREA[FieldName]value (call clinicaltrials_get_field_definitions to look up the right FieldName); free-text fields (query, conditionQuery, etc.) take plain words plus AND, OR, NOT — `[ ]` are reserved (advancedFilter AREA[] only); `( )` group sub-expressions and are safe when matched; `,` acts as AND.";
}, {
    readonly reason: "rate_limited";
    readonly code: JsonRpcErrorCode.RateLimited;
    readonly when: "ClinicalTrials.gov returned 429 after retry budget exhausted.";
    readonly recovery: "ClinicalTrials.gov rate-limited the request after several retries; wait about a minute before trying again.";
    readonly retryable: true;
}], {
    readonly searchCriteria: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
    readonly notice: z.ZodOptional<z.ZodString>;
}>;
//# sourceMappingURL=get-study-count.tool.d.ts.map