import ArgumentAssertionBuilder, { AssertionType } from '../Assertions/ArgumentAssertionBuilder'; import ArrayLikeArgumentAssertionBuilder from '../Assertions/ArrayLikeArgumentAssertionBuilder'; import GuidArgumentAssertionBuilder from '../Assertions/GuidArgumentAssertionBuilder'; import StringArgumentAssertionBuilder from '../Assertions/StringArgumentAssertionBuilder'; import Guid from '../Guid'; /** * Provides the helpers for validation * @param argument The argument. * @param argumentName Name of the argument. */ export default function ensure(argument: AssertionType, argumentName: string): StringArgumentAssertionBuilder; export default function ensure(argument: AssertionType, argumentName: string): GuidArgumentAssertionBuilder; export default function ensure(argument: AssertionType>, argumentName: string): ArrayLikeArgumentAssertionBuilder; export default function ensure(argument: AssertionType, argumentName: string): ArgumentAssertionBuilder;