import type { RagStore } from './ragStore';
export interface OemSdkDocument {
    /** Vendor identifier — `mtk`, `qualcomm`, `samsung`, etc. */
    vendor: string;
    /** Document path or url, e.g. `tuning/cpu-freq-floor.md`. */
    docPath: string;
    /** Markdown / plain-text content. */
    content: string;
    /** Approximate epoch-ms timestamp when the doc was captured. */
    fetchedAt: number;
    /** License — `proprietary` is typical; explicit non-empty string
     *  required. */
    license: string;
    /** Optional title; falls back to last path segment. */
    title?: string;
    /** Optional author / curator. */
    author?: string;
}
export interface OemSdkFetcher {
    fetchDocs(opts?: {
        vendor?: string;
    }): Promise<OemSdkDocument[]>;
}
export interface OemSdkIngestOptions {
    /** Maximum characters per chunk. Defaults to 1500 (matches blog). */
    maxChunkChars?: number;
    /** Restrict to a vendor (forwarded to fetcher). */
    vendor?: string;
}
export interface OemSdkIngestError {
    vendor: string;
    docPath: string;
    reason: string;
}
export interface OemSdkIngestResult {
    docsProcessed: number;
    chunksAdded: number;
    chunksSkipped: number;
    errors: OemSdkIngestError[];
}
/** Compose a stable URI from vendor + docPath so retrieval can
 * filter by vendor via prefix match. */
declare function uriFor(vendor: string, docPath: string): string;
declare function makeChunkId(uri: string, offset: number): string;
/** Paragraph-based chunker; same shape as the blog ingester's. */
declare function chunkText(text: string, maxChars: number): Array<{
    text: string;
    offset: number;
}>;
export declare class OemSdkKnowledgeIngester {
    private readonly store;
    private readonly fetcher;
    constructor(store: RagStore, fetcher: OemSdkFetcher);
    ingest(opts?: OemSdkIngestOptions): Promise<OemSdkIngestResult>;
}
export declare const __TEST_ONLY__: {
    chunkText: typeof chunkText;
    makeChunkId: typeof makeChunkId;
    uriFor: typeof uriFor;
};
export {};
//# sourceMappingURL=oemSdkKnowledgeIngester.d.ts.map