import type { DomainEntity } from '../instantiation/DomainEntity';
import type { DomainEvent } from '../instantiation/DomainEvent';
import type { DomainLiteral } from '../instantiation/DomainLiteral';
/**
 * Extracts an object that identifies the domain object via primary key, for DomainEntity, DomainEvent, or DomainLiteral.
 *
 * Uses the definition of a DomainEntity, DomainEvent, or DomainLiteral in order to extract the primary key of the dobj, generically.
 */
export declare const getPrimaryIdentifier: <T extends Record<string, any>>(obj: DomainEntity<T> | DomainEvent<T> | DomainLiteral<T>) => Partial<T> | undefined;
