@caidrive/shared
Version:
caidrive.shared.components
52 lines (51 loc) • 1.07 kB
TypeScript
/**
* What it does.
*
* @param name - Parameter description.
* @returns Type and description of the returned object.
*
* @example
* ```
* Write me later.
* ```
*/
import { Result } from "./result";
export interface IGuardResult {
successful: boolean;
message?: string;
}
export interface IGuardArgument {
value: any;
name: string;
}
/**
*
*/
export type GuardArgumentCollection = IGuardArgument[];
/**
*
*/
export declare class Guard {
/**
*
*/
static Numeric(argument: any, argumentName: string): Result<IGuardResult>;
/**
*
*/
static EmptyOrBlank(argument: any, argumentName: string): Result<IGuardResult>;
/**
*
*/
static NullOrUndefined(argument: any, argumentName: string): Result<IGuardResult>;
/**
*
*/
static NullOrUndefinedBulk(args: GuardArgumentCollection): Result<IGuardResult>;
/**
*
*
*/
static AtLeast(length: number, text: string): Result<IGuardResult>;
static AtMost(length: number, text: string): Result<IGuardResult>;
}