/** * Entities resource client. * * Wraps all /v1/entities endpoints: * - list GET /v1/entities * - get GET /v1/entities/:uei * - opportunities GET /v1/entities/:uei/opportunities * - exclusionCheck GET /v1/entities/:uei/exclusion-check * - stats GET /v1/entities/stats * - paginate auto-paginates over the list endpoint */ import type { HttpClient, ParsedResponse } from '../http.js'; import type { Entity, EntityStats, EntityExclusionCheckResult, ListEntitiesParams } from '../types/entities.js'; import type { Opportunity } from '../types/opportunities.js'; import type { PaginationParams } from '../types/common.js'; export declare class EntitiesResource { private readonly http; constructor(http: HttpClient); /** * Search and filter SAM.gov registered entities (vendors). * * @param params Filter and pagination parameters. * * @example * ```ts * const result = await client.entities.list({ * naics: '541512', * certification: '8A', * state: 'VA', * }); * ``` */ list(params?: ListEntitiesParams): Promise>; /** * Get the full SAM.gov registration profile for a vendor by UEI. * * @param uei Unique Entity Identifier (12-char alphanumeric). * @throws {NotFoundError} If the entity does not exist. * * @example * ```ts * const entity = await client.entities.get('ABCDEF123456'); * console.log(entity.data.legalBusinessName); * ``` */ get(uei: string): Promise>; /** * Get awarded contract opportunities linked to a vendor. * * @param uei Unique Entity Identifier. * @param params Pagination parameters. * @throws {NotFoundError} If the entity does not exist. * * @example * ```ts * const contracts = await client.entities.opportunities('ABCDEF123456', { limit: 10 }); * ``` */ opportunities(uei: string, params?: PaginationParams): Promise>; /** * Check whether a vendor is currently excluded (debarred) from federal contracts. * * @param uei Unique Entity Identifier. * @throws {NotFoundError} If the entity does not exist. * * @example * ```ts * const check = await client.entities.exclusionCheck('ABCDEF123456'); * if (check.data.excluded) { * console.warn('Vendor is EXCLUDED!', check.data.exclusion); * } * ``` */ exclusionCheck(uei: string): Promise>; /** * Get aggregated entity registration statistics. * * @example * ```ts * const stats = await client.entities.stats(); * console.log('Total registered entities:', stats.data.total); * ``` */ stats(): Promise>; /** * Async generator that automatically paginates over all matching entities. * * @param params Same filter parameters as `list()`. Do not pass `page`. * * @example * ```ts * for await (const page of client.entities.paginate({ naics: '541512' })) { * for (const entity of page.data) { * console.log(entity.legalBusinessName); * } * } * ``` */ paginate(params: Omit): AsyncGenerator>; } //# sourceMappingURL=entities.d.ts.map