/** @monorepo-internal */
export declare function singleWithWarning<T>(array: T[]): T;
/** @monorepo-internal */
export declare function singleOrUndefinedWithWarning<T>(array: T[]): T;
/** @monorepo-internal */
export declare function getSingleOrEmpty<T>(array: T[]): T;
/** @monorepo-internal */
export declare function singleOrUndefined<T>(array: T[], predicate?: (item: T) => boolean): T;
/** @monorepo-internal */
export declare function singleAsync<T>(array: Promise<T[]>): Promise<T>;
/** @monorepo-internal */
export declare function singleOrUndefinedAsync<T>(array: Promise<T[]>, predicate?: (item: T) => boolean): Promise<T>;
/** @monorepo-internal */
export declare function first<T>(arr: T[]): T;
/** @monorepo-internal */
export declare function firstOrUndefined<T>(arr: T[]): T | undefined;
