type RetrievedEntity = {
    id: string;
    entity_type: string;
    canonical_name: string;
    snapshot: unknown;
    /**
     * Optionally included when the caller sets `include_observations = true`.
     * Ordered by observed_at descending, capped by `observations_limit`.
     */
    observations?: unknown[];
};
export interface RetrieveEntityByIdentifierParams {
    identifier: string;
    entityType?: string;
    userId: string;
    limit?: number;
    /**
     * Restrict snapshot matching to a specific field (e.g. "email", "domain",
     * "company"). When omitted, a default set of identity-bearing fields is
     * checked (name, full_name, title, email, domain, company).
     */
    by?: string;
    /**
     * When true, attach the latest observations to each returned entity so
     * callers can resolve, snapshot, and hydrate observations in a single
     * round-trip.
     */
    includeObservations?: boolean;
    /**
     * Maximum observations to attach per entity (default 20, max 200).
     * Ignored when includeObservations is false.
     */
    observationsLimit?: number;
}
export interface RetrieveEntityByIdentifierResult {
    entities: RetrievedEntity[];
    total: number;
}
export declare function retrieveEntityByIdentifierWithFallback(params: RetrieveEntityByIdentifierParams): Promise<RetrieveEntityByIdentifierResult>;
export {};
//# sourceMappingURL=entity_identifier_handler.d.ts.map