You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
2.3 KiB
119 lines
2.3 KiB
4 weeks ago
|
/**
|
||
|
* config captcha generation options
|
||
|
*/
|
||
|
declare class ConfigObject {
|
||
|
/**
|
||
|
* default: true
|
||
|
* The length of the random string
|
||
|
*/
|
||
|
size?: number;
|
||
|
/**
|
||
|
* width of captcha
|
||
|
*/
|
||
|
width?: number;
|
||
|
/**
|
||
|
* height of captcha
|
||
|
*/
|
||
|
height?: number;
|
||
|
/**
|
||
|
* captcha text size
|
||
|
*/
|
||
|
fontSize?: number;
|
||
|
/**
|
||
|
* random character preset
|
||
|
*/
|
||
|
charPreset?: string;
|
||
|
/**
|
||
|
* default: false
|
||
|
* if false, captcha will be black and white
|
||
|
* otherwise, it will be randomly colorized
|
||
|
*/
|
||
|
color?: boolean;
|
||
|
/**
|
||
|
* default: false
|
||
|
* if set to true, it will draw with light grey color
|
||
|
* use if you have a site with dark theme
|
||
|
* only active when color is set to false
|
||
|
*/
|
||
|
inverse?: boolean;
|
||
|
/**
|
||
|
* default: ''
|
||
|
* filter out some characters
|
||
|
*/
|
||
|
ignoreChars?: string;
|
||
|
/**
|
||
|
* default: 1
|
||
|
* number of noise lines
|
||
|
*/
|
||
|
noise?: number;
|
||
|
/**
|
||
|
* default: white
|
||
|
* background color of svg image
|
||
|
*/
|
||
|
background?: string;
|
||
|
/**
|
||
|
* default: +
|
||
|
* the math operator to use, "+", "-" or "+/-"
|
||
|
* if unknown operator passed defaults to "+/-"
|
||
|
*/
|
||
|
mathOperator?: string;
|
||
|
/**
|
||
|
* default: 1
|
||
|
* min value of the math expression
|
||
|
*/
|
||
|
mathMin?: number;
|
||
|
/**
|
||
|
* default: 9
|
||
|
* max value of the math expression
|
||
|
*/
|
||
|
mathMax?: number;
|
||
|
}
|
||
|
/**
|
||
|
* result of captcha generation
|
||
|
*/
|
||
|
interface CaptchaObj {
|
||
|
/**
|
||
|
* the captcha text,
|
||
|
* store this in your session
|
||
|
*/
|
||
|
text: string,
|
||
|
/**
|
||
|
* the svg image in string,
|
||
|
* set type of image/svg before send to client side
|
||
|
*/
|
||
|
data: string
|
||
|
}
|
||
|
/**
|
||
|
* This method returns a object that has two props:
|
||
|
* data: svg image string
|
||
|
* text: captcha text
|
||
|
* @param {ConfigObject} [options]
|
||
|
* @return {CaptchaObj}
|
||
|
*/
|
||
|
export function create(options?: ConfigObject): CaptchaObj;
|
||
|
/**
|
||
|
* This method returns a object that has two props:
|
||
|
* data: svg image string
|
||
|
* text: captcha text
|
||
|
* note that this method generate a math expression
|
||
|
* this means that text is the result of the math expression
|
||
|
* @param {ConfigObject} [options]
|
||
|
* @return {CaptchaObj}
|
||
|
*/
|
||
|
export function createMathExpr(options?: ConfigObject): CaptchaObj;
|
||
|
/**
|
||
|
* Override the default font with your own
|
||
|
* @param {string} url
|
||
|
*/
|
||
|
export function loadFont(url: string): void;
|
||
|
/**
|
||
|
* captcha generation global setting
|
||
|
*/
|
||
|
export const options: ConfigObject;
|
||
|
/**
|
||
|
* return a random string
|
||
|
* @param {number} size
|
||
|
* @return {string}
|
||
|
*/
|
||
|
export function randomText(size: number): string;
|