UNPKG

domain-objects

Version:

A simple, convenient way to represent domain objects, leverage domain knowledge, and add runtime validation in your code base.

8 lines (7 loc) 618 B
import type { RefByUnique } from '../instantiation/RefByUnique'; import type { Ref } from './Ref.type'; import type { DomainObjectShape, Refable } from './Refable'; export declare const isRefByUnique: <TDobj extends Refable<TShape, TPrimary, TUnique>, TShape extends DomainObjectShape = any, TPrimary extends readonly string[] = any, TUnique extends readonly string[] = any>({ of, }: { of: TDobj; }) => (ref: Ref<Refable<TShape, any, any>, // refable<TShape, any, any> to ensure even unclassed .getReferenceTo usage can use this TShape, TPrimary, TUnique>) => ref is RefByUnique<TDobj, TShape, TPrimary, TUnique>;