/** * Zod schemas for runtime validation of indexer configuration. * Provides type-safe validation of config files and CLI options. */ import { z } from 'zod'; /** * Markdown source configuration schema (local files) */ export declare const MarkdownSourceConfigSchema: z.ZodObject<{ /** Custom category mappings (path/URL pattern -> category) */ categories: z.ZodOptional>; } & { /** Source type (default for backwards compatibility) */ type: z.ZodOptional>; /** Path to content directory */ path: z.ZodString; /** Guide name for this source (e.g., "warranty") */ guide: z.ZodOptional; /** File patterns to include (default: **\/*.md) */ include: z.ZodOptional>; /** File patterns to exclude */ exclude: z.ZodOptional>; }, "strip", z.ZodTypeAny, { path: string; type?: "markdown" | undefined; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; }, { path: string; type?: "markdown" | undefined; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; }>; /** * Web source configuration schema (scraped content) */ export declare const WebSourceConfigSchema: z.ZodObject<{ /** Custom category mappings (path/URL pattern -> category) */ categories: z.ZodOptional>; } & { /** Source type */ type: z.ZodLiteral<"web">; /** Sitemap index URL */ sitemapUrl: z.ZodString; /** Only process these child sitemaps */ includeSitemaps: z.ZodOptional>; /** URL patterns to exclude (supports * wildcards) */ excludePatterns: z.ZodOptional>; /** CSS selectors for main content areas */ contentSelectors: z.ZodOptional>; /** CSS selectors for elements to remove */ excludeSelectors: z.ZodOptional>; /** Requests per second (default: 2) */ rateLimit: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "web"; sitemapUrl: string; includeSitemaps?: string[] | undefined; excludePatterns?: string[] | undefined; contentSelectors?: string[] | undefined; excludeSelectors?: string[] | undefined; rateLimit?: number | undefined; categories?: Record | undefined; }, { type: "web"; sitemapUrl: string; includeSitemaps?: string[] | undefined; excludePatterns?: string[] | undefined; contentSelectors?: string[] | undefined; excludeSelectors?: string[] | undefined; rateLimit?: number | undefined; categories?: Record | undefined; }>; /** * GitHub source configuration schema (repository content) */ export declare const GitHubSourceConfigSchema: z.ZodObject<{ /** Custom category mappings (path/URL pattern -> category) */ categories: z.ZodOptional>; } & { /** Source type */ type: z.ZodLiteral<"github">; /** Repository in "owner/repo" format */ repository: z.ZodString; /** Default branch (default: "main") */ defaultRef: z.ZodOptional; /** Path to docs directory (default: "docs") */ docsPath: z.ZodOptional; /** Guide identifier */ guide: z.ZodString; /** URL route base path (e.g., "warranty") */ routeBasePath: z.ZodString; /** Docusaurus versioning configuration */ versioning: z.ZodOptional; /** Path to versions.json relative to repo root */ versionsFile: z.ZodString; /** Path pattern for versioned docs (use {version} placeholder) */ versionedDocsPath: z.ZodString; /** Which version is "current" (gets clean URLs) */ currentVersion: z.ZodString; /** Only index these versions (optional) */ includeVersions: z.ZodOptional>; /** Skip these versions (optional) */ excludeVersions: z.ZodOptional>; }, "strip", z.ZodTypeAny, { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; }, { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; }>>; /** File patterns to exclude */ exclude: z.ZodOptional>; }, "strip", z.ZodTypeAny, { type: "github"; guide: string; repository: string; routeBasePath: string; exclude?: string[] | undefined; defaultRef?: string | undefined; docsPath?: string | undefined; versioning?: { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; } | undefined; categories?: Record | undefined; }, { type: "github"; guide: string; repository: string; routeBasePath: string; exclude?: string[] | undefined; defaultRef?: string | undefined; docsPath?: string | undefined; versioning?: { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; } | undefined; categories?: Record | undefined; }>; /** * Union schema for all source types */ export declare const SourceConfigSchema: z.ZodUnion<[z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ /** Custom category mappings (path/URL pattern -> category) */ categories: z.ZodOptional>; } & { /** Source type */ type: z.ZodLiteral<"web">; /** Sitemap index URL */ sitemapUrl: z.ZodString; /** Only process these child sitemaps */ includeSitemaps: z.ZodOptional>; /** URL patterns to exclude (supports * wildcards) */ excludePatterns: z.ZodOptional>; /** CSS selectors for main content areas */ contentSelectors: z.ZodOptional>; /** CSS selectors for elements to remove */ excludeSelectors: z.ZodOptional>; /** Requests per second (default: 2) */ rateLimit: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "web"; sitemapUrl: string; includeSitemaps?: string[] | undefined; excludePatterns?: string[] | undefined; contentSelectors?: string[] | undefined; excludeSelectors?: string[] | undefined; rateLimit?: number | undefined; categories?: Record | undefined; }, { type: "web"; sitemapUrl: string; includeSitemaps?: string[] | undefined; excludePatterns?: string[] | undefined; contentSelectors?: string[] | undefined; excludeSelectors?: string[] | undefined; rateLimit?: number | undefined; categories?: Record | undefined; }>, z.ZodObject<{ /** Custom category mappings (path/URL pattern -> category) */ categories: z.ZodOptional>; } & { /** Source type */ type: z.ZodLiteral<"github">; /** Repository in "owner/repo" format */ repository: z.ZodString; /** Default branch (default: "main") */ defaultRef: z.ZodOptional; /** Path to docs directory (default: "docs") */ docsPath: z.ZodOptional; /** Guide identifier */ guide: z.ZodString; /** URL route base path (e.g., "warranty") */ routeBasePath: z.ZodString; /** Docusaurus versioning configuration */ versioning: z.ZodOptional; /** Path to versions.json relative to repo root */ versionsFile: z.ZodString; /** Path pattern for versioned docs (use {version} placeholder) */ versionedDocsPath: z.ZodString; /** Which version is "current" (gets clean URLs) */ currentVersion: z.ZodString; /** Only index these versions (optional) */ includeVersions: z.ZodOptional>; /** Skip these versions (optional) */ excludeVersions: z.ZodOptional>; }, "strip", z.ZodTypeAny, { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; }, { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; }>>; /** File patterns to exclude */ exclude: z.ZodOptional>; }, "strip", z.ZodTypeAny, { type: "github"; guide: string; repository: string; routeBasePath: string; exclude?: string[] | undefined; defaultRef?: string | undefined; docsPath?: string | undefined; versioning?: { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; } | undefined; categories?: Record | undefined; }, { type: "github"; guide: string; repository: string; routeBasePath: string; exclude?: string[] | undefined; defaultRef?: string | undefined; docsPath?: string | undefined; versioning?: { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; } | undefined; categories?: Record | undefined; }>, z.ZodObject<{ categories: z.ZodOptional>; path: z.ZodString; guide: z.ZodOptional; include: z.ZodOptional>; exclude: z.ZodOptional>; } & { type: z.ZodLiteral<"markdown">; }, "strip", z.ZodTypeAny, { type: "markdown"; path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; }, { type: "markdown"; path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; }>]>, z.ZodObject category) */ categories: z.ZodOptional>; } & { /** Source type (default for backwards compatibility) */ type: z.ZodOptional>; /** Path to content directory */ path: z.ZodString; /** Guide name for this source (e.g., "warranty") */ guide: z.ZodOptional; /** File patterns to include (default: **\/*.md) */ include: z.ZodOptional>; /** File patterns to exclude */ exclude: z.ZodOptional>; }, "type">, "strip", z.ZodTypeAny, { path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; }, { path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; }>]>; /** * Versioning configuration schema */ export declare const VersioningConfigSchema: z.ZodObject<{ /** Path to versions.json file */ versionsFile: z.ZodOptional; /** Path to versioned_docs directory */ versionedDocsPath: z.ZodOptional; /** Explicit list of versions to index */ versions: z.ZodOptional>; }, "strip", z.ZodTypeAny, { versionsFile?: string | undefined; versionedDocsPath?: string | undefined; versions?: string[] | undefined; }, { versionsFile?: string | undefined; versionedDocsPath?: string | undefined; versions?: string[] | undefined; }>; /** * URL generation configuration schema */ export declare const UrlConfigSchema: z.ZodObject<{ /** URL pattern template. Variables: {site}, {guide}, {version}, {path} */ pattern: z.ZodOptional; /** Version to treat as "latest" (omit from URL) */ latestVersion: z.ZodOptional; }, "strip", z.ZodTypeAny, { pattern?: string | undefined; latestVersion?: string | undefined; }, { pattern?: string | undefined; latestVersion?: string | undefined; }>; /** * Chunking configuration schema */ export declare const ChunkingConfigSchema: z.ZodObject<{ /** Chunking strategy */ strategy: z.ZodOptional>; /** Heading level to split on (for 'heading' strategy) */ headingLevel: z.ZodOptional; /** Minimum chunk size in characters */ minSize: z.ZodOptional; /** Maximum chunk size in characters */ maxSize: z.ZodOptional; }, "strip", z.ZodTypeAny, { strategy?: "heading" | "paragraph" | "fixed" | undefined; headingLevel?: number | undefined; minSize?: number | undefined; maxSize?: number | undefined; }, { strategy?: "heading" | "paragraph" | "fixed" | undefined; headingLevel?: number | undefined; minSize?: number | undefined; maxSize?: number | undefined; }>; /** * Embedding configuration schema */ export declare const EmbeddingConfigSchema: z.ZodObject<{ /** Embedding model name */ model: z.ZodOptional; /** Batch size for embedding requests */ batchSize: z.ZodOptional; }, "strip", z.ZodTypeAny, { model?: string | undefined; batchSize?: number | undefined; }, { model?: string | undefined; batchSize?: number | undefined; }>; /** * Vectorize configuration schema */ export declare const VectorizeConfigSchema: z.ZodObject<{ /** Vectorize index name */ indexName: z.ZodString; /** Batch size for upsert requests */ batchSize: z.ZodOptional; }, "strip", z.ZodTypeAny, { indexName: string; batchSize?: number | undefined; }, { indexName: string; batchSize?: number | undefined; }>; /** * Auto-init configuration schema for Vectorize index creation */ export declare const AutoInitConfigSchema: z.ZodObject<{ /** Whether to auto-initialize the index (default: true) */ enabled: z.ZodOptional; /** Embedding dimensions (default: 1024 from embedding config) */ dimensions: z.ZodOptional; /** Distance metric (default: cosine) */ metric: z.ZodOptional>; /** Metadata indexes to create for filtering */ metadataIndexes: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "string" | "number" | "boolean"; propertyName: string; }, { type: "string" | "number" | "boolean"; propertyName: string; }>, "many">>; }, "strip", z.ZodTypeAny, { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; }, { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; }>; /** * Extended Vectorize configuration schema with auto-init support */ export declare const ExtendedVectorizeConfigSchema: z.ZodObject<{ /** Vectorize index name */ indexName: z.ZodString; /** Batch size for upsert requests */ batchSize: z.ZodOptional; } & { /** Auto-initialization settings for index creation */ autoInit: z.ZodOptional; /** Embedding dimensions (default: 1024 from embedding config) */ dimensions: z.ZodOptional; /** Distance metric (default: cosine) */ metric: z.ZodOptional>; /** Metadata indexes to create for filtering */ metadataIndexes: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "string" | "number" | "boolean"; propertyName: string; }, { type: "string" | "number" | "boolean"; propertyName: string; }>, "many">>; }, "strip", z.ZodTypeAny, { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; }, { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; }>>; }, "strip", z.ZodTypeAny, { indexName: string; batchSize?: number | undefined; autoInit?: { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; } | undefined; }, { indexName: string; batchSize?: number | undefined; autoInit?: { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; } | undefined; }>; /** * Full indexer configuration schema */ export declare const IndexerConfigSchema: z.ZodEffects; /** Content version (e.g., "2026.07.01", "next") */ version: z.ZodOptional; /** Whether this is the latest/current version */ isLatest: z.ZodOptional; /** Content sources to index */ sources: z.ZodArray category) */ categories: z.ZodOptional>; } & { /** Source type */ type: z.ZodLiteral<"web">; /** Sitemap index URL */ sitemapUrl: z.ZodString; /** Only process these child sitemaps */ includeSitemaps: z.ZodOptional>; /** URL patterns to exclude (supports * wildcards) */ excludePatterns: z.ZodOptional>; /** CSS selectors for main content areas */ contentSelectors: z.ZodOptional>; /** CSS selectors for elements to remove */ excludeSelectors: z.ZodOptional>; /** Requests per second (default: 2) */ rateLimit: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "web"; sitemapUrl: string; includeSitemaps?: string[] | undefined; excludePatterns?: string[] | undefined; contentSelectors?: string[] | undefined; excludeSelectors?: string[] | undefined; rateLimit?: number | undefined; categories?: Record | undefined; }, { type: "web"; sitemapUrl: string; includeSitemaps?: string[] | undefined; excludePatterns?: string[] | undefined; contentSelectors?: string[] | undefined; excludeSelectors?: string[] | undefined; rateLimit?: number | undefined; categories?: Record | undefined; }>, z.ZodObject<{ /** Custom category mappings (path/URL pattern -> category) */ categories: z.ZodOptional>; } & { /** Source type */ type: z.ZodLiteral<"github">; /** Repository in "owner/repo" format */ repository: z.ZodString; /** Default branch (default: "main") */ defaultRef: z.ZodOptional; /** Path to docs directory (default: "docs") */ docsPath: z.ZodOptional; /** Guide identifier */ guide: z.ZodString; /** URL route base path (e.g., "warranty") */ routeBasePath: z.ZodString; /** Docusaurus versioning configuration */ versioning: z.ZodOptional; /** Path to versions.json relative to repo root */ versionsFile: z.ZodString; /** Path pattern for versioned docs (use {version} placeholder) */ versionedDocsPath: z.ZodString; /** Which version is "current" (gets clean URLs) */ currentVersion: z.ZodString; /** Only index these versions (optional) */ includeVersions: z.ZodOptional>; /** Skip these versions (optional) */ excludeVersions: z.ZodOptional>; }, "strip", z.ZodTypeAny, { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; }, { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; }>>; /** File patterns to exclude */ exclude: z.ZodOptional>; }, "strip", z.ZodTypeAny, { type: "github"; guide: string; repository: string; routeBasePath: string; exclude?: string[] | undefined; defaultRef?: string | undefined; docsPath?: string | undefined; versioning?: { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; } | undefined; categories?: Record | undefined; }, { type: "github"; guide: string; repository: string; routeBasePath: string; exclude?: string[] | undefined; defaultRef?: string | undefined; docsPath?: string | undefined; versioning?: { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; } | undefined; categories?: Record | undefined; }>, z.ZodObject<{ categories: z.ZodOptional>; path: z.ZodString; guide: z.ZodOptional; include: z.ZodOptional>; exclude: z.ZodOptional>; } & { type: z.ZodLiteral<"markdown">; }, "strip", z.ZodTypeAny, { type: "markdown"; path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; }, { type: "markdown"; path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; }>]>, z.ZodObject category) */ categories: z.ZodOptional>; } & { /** Source type (default for backwards compatibility) */ type: z.ZodOptional>; /** Path to content directory */ path: z.ZodString; /** Guide name for this source (e.g., "warranty") */ guide: z.ZodOptional; /** File patterns to include (default: **\/*.md) */ include: z.ZodOptional>; /** File patterns to exclude */ exclude: z.ZodOptional>; }, "type">, "strip", z.ZodTypeAny, { path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; }, { path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; }>]>, "many">; /** Versioning configuration */ versioning: z.ZodOptional; /** Path to versioned_docs directory */ versionedDocsPath: z.ZodOptional; /** Explicit list of versions to index */ versions: z.ZodOptional>; }, "strip", z.ZodTypeAny, { versionsFile?: string | undefined; versionedDocsPath?: string | undefined; versions?: string[] | undefined; }, { versionsFile?: string | undefined; versionedDocsPath?: string | undefined; versions?: string[] | undefined; }>>; /** URL generation configuration */ url: z.ZodOptional; /** Version to treat as "latest" (omit from URL) */ latestVersion: z.ZodOptional; }, "strip", z.ZodTypeAny, { pattern?: string | undefined; latestVersion?: string | undefined; }, { pattern?: string | undefined; latestVersion?: string | undefined; }>>; /** Chunking configuration */ chunking: z.ZodOptional>; /** Heading level to split on (for 'heading' strategy) */ headingLevel: z.ZodOptional; /** Minimum chunk size in characters */ minSize: z.ZodOptional; /** Maximum chunk size in characters */ maxSize: z.ZodOptional; }, "strip", z.ZodTypeAny, { strategy?: "heading" | "paragraph" | "fixed" | undefined; headingLevel?: number | undefined; minSize?: number | undefined; maxSize?: number | undefined; }, { strategy?: "heading" | "paragraph" | "fixed" | undefined; headingLevel?: number | undefined; minSize?: number | undefined; maxSize?: number | undefined; }>>; /** Embedding configuration */ embedding: z.ZodOptional; /** Batch size for embedding requests */ batchSize: z.ZodOptional; }, "strip", z.ZodTypeAny, { model?: string | undefined; batchSize?: number | undefined; }, { model?: string | undefined; batchSize?: number | undefined; }>>; /** Vectorize configuration */ vectorize: z.ZodObject<{ /** Vectorize index name */ indexName: z.ZodString; /** Batch size for upsert requests */ batchSize: z.ZodOptional; } & { /** Auto-initialization settings for index creation */ autoInit: z.ZodOptional; /** Embedding dimensions (default: 1024 from embedding config) */ dimensions: z.ZodOptional; /** Distance metric (default: cosine) */ metric: z.ZodOptional>; /** Metadata indexes to create for filtering */ metadataIndexes: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "string" | "number" | "boolean"; propertyName: string; }, { type: "string" | "number" | "boolean"; propertyName: string; }>, "many">>; }, "strip", z.ZodTypeAny, { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; }, { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; }>>; }, "strip", z.ZodTypeAny, { indexName: string; batchSize?: number | undefined; autoInit?: { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; } | undefined; }, { indexName: string; batchSize?: number | undefined; autoInit?: { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; } | undefined; }>; }, "strip", z.ZodTypeAny, { site: string; siteUrl: string; sources: ({ type: "web"; sitemapUrl: string; includeSitemaps?: string[] | undefined; excludePatterns?: string[] | undefined; contentSelectors?: string[] | undefined; excludeSelectors?: string[] | undefined; rateLimit?: number | undefined; categories?: Record | undefined; } | { type: "github"; guide: string; repository: string; routeBasePath: string; exclude?: string[] | undefined; defaultRef?: string | undefined; docsPath?: string | undefined; versioning?: { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; } | undefined; categories?: Record | undefined; } | { type: "markdown"; path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; } | { path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; })[]; vectorize: { indexName: string; batchSize?: number | undefined; autoInit?: { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; } | undefined; }; guide?: string | undefined; versioning?: { versionsFile?: string | undefined; versionedDocsPath?: string | undefined; versions?: string[] | undefined; } | undefined; version?: string | undefined; isLatest?: boolean | undefined; url?: { pattern?: string | undefined; latestVersion?: string | undefined; } | undefined; chunking?: { strategy?: "heading" | "paragraph" | "fixed" | undefined; headingLevel?: number | undefined; minSize?: number | undefined; maxSize?: number | undefined; } | undefined; embedding?: { model?: string | undefined; batchSize?: number | undefined; } | undefined; }, { site: string; siteUrl: string; sources: ({ type: "web"; sitemapUrl: string; includeSitemaps?: string[] | undefined; excludePatterns?: string[] | undefined; contentSelectors?: string[] | undefined; excludeSelectors?: string[] | undefined; rateLimit?: number | undefined; categories?: Record | undefined; } | { type: "github"; guide: string; repository: string; routeBasePath: string; exclude?: string[] | undefined; defaultRef?: string | undefined; docsPath?: string | undefined; versioning?: { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; } | undefined; categories?: Record | undefined; } | { type: "markdown"; path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; } | { path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; })[]; vectorize: { indexName: string; batchSize?: number | undefined; autoInit?: { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; } | undefined; }; guide?: string | undefined; versioning?: { versionsFile?: string | undefined; versionedDocsPath?: string | undefined; versions?: string[] | undefined; } | undefined; version?: string | undefined; isLatest?: boolean | undefined; url?: { pattern?: string | undefined; latestVersion?: string | undefined; } | undefined; chunking?: { strategy?: "heading" | "paragraph" | "fixed" | undefined; headingLevel?: number | undefined; minSize?: number | undefined; maxSize?: number | undefined; } | undefined; embedding?: { model?: string | undefined; batchSize?: number | undefined; } | undefined; }>, { site: string; siteUrl: string; sources: ({ type: "web"; sitemapUrl: string; includeSitemaps?: string[] | undefined; excludePatterns?: string[] | undefined; contentSelectors?: string[] | undefined; excludeSelectors?: string[] | undefined; rateLimit?: number | undefined; categories?: Record | undefined; } | { type: "github"; guide: string; repository: string; routeBasePath: string; exclude?: string[] | undefined; defaultRef?: string | undefined; docsPath?: string | undefined; versioning?: { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; } | undefined; categories?: Record | undefined; } | { type: "markdown"; path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; } | { path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; })[]; vectorize: { indexName: string; batchSize?: number | undefined; autoInit?: { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; } | undefined; }; guide?: string | undefined; versioning?: { versionsFile?: string | undefined; versionedDocsPath?: string | undefined; versions?: string[] | undefined; } | undefined; version?: string | undefined; isLatest?: boolean | undefined; url?: { pattern?: string | undefined; latestVersion?: string | undefined; } | undefined; chunking?: { strategy?: "heading" | "paragraph" | "fixed" | undefined; headingLevel?: number | undefined; minSize?: number | undefined; maxSize?: number | undefined; } | undefined; embedding?: { model?: string | undefined; batchSize?: number | undefined; } | undefined; }, { site: string; siteUrl: string; sources: ({ type: "web"; sitemapUrl: string; includeSitemaps?: string[] | undefined; excludePatterns?: string[] | undefined; contentSelectors?: string[] | undefined; excludeSelectors?: string[] | undefined; rateLimit?: number | undefined; categories?: Record | undefined; } | { type: "github"; guide: string; repository: string; routeBasePath: string; exclude?: string[] | undefined; defaultRef?: string | undefined; docsPath?: string | undefined; versioning?: { strategy: "docusaurus"; versionsFile: string; versionedDocsPath: string; currentVersion: string; includeVersions?: string[] | undefined; excludeVersions?: string[] | undefined; } | undefined; categories?: Record | undefined; } | { type: "markdown"; path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; } | { path: string; guide?: string | undefined; include?: string[] | undefined; exclude?: string[] | undefined; categories?: Record | undefined; })[]; vectorize: { indexName: string; batchSize?: number | undefined; autoInit?: { enabled?: boolean | undefined; dimensions?: number | undefined; metric?: "cosine" | "euclidean" | "dot-product" | undefined; metadataIndexes?: { type: "string" | "number" | "boolean"; propertyName: string; }[] | undefined; } | undefined; }; guide?: string | undefined; versioning?: { versionsFile?: string | undefined; versionedDocsPath?: string | undefined; versions?: string[] | undefined; } | undefined; version?: string | undefined; isLatest?: boolean | undefined; url?: { pattern?: string | undefined; latestVersion?: string | undefined; } | undefined; chunking?: { strategy?: "heading" | "paragraph" | "fixed" | undefined; headingLevel?: number | undefined; minSize?: number | undefined; maxSize?: number | undefined; } | undefined; embedding?: { model?: string | undefined; batchSize?: number | undefined; } | undefined; }>; /** * Type inferred from the schema (matches IndexerConfig interface) */ export type ValidatedIndexerConfig = z.infer; /** * Validate configuration and return typed result. * Throws ZodError with detailed messages if validation fails. * * @param config - Configuration object to validate * @returns Validated configuration * @throws ZodError if validation fails */ export declare function validateConfigSchema(config: unknown): ValidatedIndexerConfig; /** * Safe validation that returns a result object instead of throwing. * * @param config - Configuration object to validate * @returns Object with success boolean and either data or error */ export declare function safeValidateConfigSchema(config: unknown): { success: boolean; data?: ValidatedIndexerConfig; error?: string; }; //# sourceMappingURL=schema.d.ts.map