import type { OSV as OSVFormat } from "../formats/osv/index.ts";
import type { ApiCredential } from "../credential.ts";
export type OSVQueryBatchEntry = {
    version?: string;
    package: {
        name: string;
        /**
         * @default npm
         */
        ecosystem?: string;
    };
};
export interface OSVQueryBatchRequest {
    queries: OSVQueryBatchEntry[];
}
export interface OSVQueryBatchResult {
    vulns?: OSVFormat[];
}
export interface OSVQueryBatchResponse {
    results: OSVQueryBatchResult[];
}
export interface OSVOptions {
    credential?: ApiCredential;
}
export declare class OSV {
    #private;
    static readonly ROOT_API = "https://api.osv.dev";
    constructor(options?: OSVOptions);
    query(query: OSVQueryBatchEntry): Promise<OSVFormat[]>;
    queryBySpec(spec: string): Promise<OSVFormat[]>;
    queryBatch(queries: OSVQueryBatchEntry[]): Promise<OSVQueryBatchResult[]>;
    findVulnById(id: string): Promise<OSVFormat>;
}
//# sourceMappingURL=osv.d.ts.map