import type { Test } from "../definition/type/test.mjs";
declare function isUnion<T1, T2>(value: unknown, tests: [Test<T1>, Test<T2>]): value is T1 | T2;
declare function isUnion<T1, T2, T3>(value: unknown, tests: [Test<T1>, Test<T2>, Test<T3>]): value is T1 | T2 | T3;
declare function isUnion<T1, T2, T3, T4>(value: unknown, tests: [Test<T1>, Test<T2>, Test<T3>, Test<T4>]): value is T1 | T2 | T3 | T4;
declare function isUnion<T1, T2, T3, T4, T5>(value: unknown, tests: [Test<T1>, Test<T2>, Test<T3>, Test<T4>, Test<T5>]): value is T1 | T2 | T3 | T4 | T5;
declare function isUnion<T>(value: unknown, tests: Array<Test<T>>): value is T;
export { isUnion };
