DefinitelyTyped/knockout.validation/knockout.validation.d.ts
Dennis bfc96c0e34 Missing locale functions and types (#8981)
* added svgRendering property to Html2CanvasOptions interface

* added an empty namespace in koa-bodyparser.d.ts (#8979)

Without this, there will be `Module '"koa-bodyparser"' resolves to a non-module entity and cannot be imported using this construct. (2497)` error
This solution is found (here)[https://github.com/Microsoft/TypeScript/issues/5073].
koa-json's `.d.ts` file has such namespace.

* Missing locale functions and types
2016-04-17 23:13:33 +09:00

161 lines
5.1 KiB
TypeScript

// Type definitions for Knockout Validation
// Project: https://github.com/ericmbarnard/Knockout-Validation
// Definitions by: Dan Ludwig <https://github.com/danludwig>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
/// <reference path="../knockout/knockout.d.ts" />
interface KnockoutValidationGroupingOptions {
deep?: boolean;
observable?: boolean;
}
interface KnockoutValidationConfiguration {
registerExtenders?: boolean;
messagesOnModified?: boolean;
messageTemplate?: string;
insertMessages?: boolean;
parseInputAttributes?: boolean;
writeInputAttributes?: boolean;
decorateInputElement?: boolean;
errorClass?: string;
errorElementClass?: string;
errorMessageClass?: string;
grouping?: KnockoutValidationGroupingOptions;
}
interface KnockoutValidationUtils {
isArray(o: any): boolean;
isObject(o: any): boolean;
values(o: any): any[];
getValue(o: any): any;
hasAttribute(node: Element, attr: string): boolean;
isValidatable(o: any): boolean;
insertAfter(node: Element, newNode: Element): void;
newId(): number;
getConfigOptions(element: Element): KnockoutValidationConfiguration;
setDomData(node: Element, data: KnockoutValidationConfiguration): void;
getDomData(node: Element): KnockoutValidationConfiguration;
contextFor(node: Element): KnockoutValidationConfiguration;
isEmptyVal(val: any): boolean;
}
interface KnockoutValidationAsyncCallbackArgs {
isValid: boolean;
message: string;
}
interface KnockoutValidationAsyncCallback {
(result: boolean): void;
(result: KnockoutValidationAsyncCallbackArgs): void;
}
interface KnockoutValidationRuleBase
{
message: string;
}
interface KnockoutValidationRuleDefinition extends KnockoutValidationRuleBase {
validator(value: any, params: any): boolean;
}
interface KnockoutValidationAsyncRuleDefinition extends KnockoutValidationRuleBase {
async: boolean;
validator(value: any, params: any, callback: KnockoutValidationAsyncCallback): void;
}
interface KnockoutValidationAnonymousRuleDefinition {
validation: KnockoutValidationRuleDefinition;
}
interface KnockoutValidationRuleDefinitions {
date: KnockoutValidationRuleDefinition;
dateISO: KnockoutValidationRuleDefinition;
digit: KnockoutValidationRuleDefinition;
email: KnockoutValidationRuleDefinition;
equal: KnockoutValidationRuleDefinition;
max: KnockoutValidationRuleDefinition;
maxLength: KnockoutValidationRuleDefinition;
min: KnockoutValidationRuleDefinition;
minLength: KnockoutValidationRuleDefinition;
notEqual: KnockoutValidationRuleDefinition;
number: KnockoutValidationRuleDefinition;
pattern: KnockoutValidationRuleDefinition;
phoneUS: KnockoutValidationRuleDefinition;
required: KnockoutValidationRuleDefinition;
step: KnockoutValidationRuleDefinition;
unique: KnockoutValidationRuleDefinition;
}
interface KnockoutValidationRule {
rule: string;
params: any;
message?: string;
condition?: () => boolean;
}
interface KnockoutValidationErrors {
(): string[];
showAllMessages(): void;
showAllMessages(show: boolean): void;
}
interface KnockoutValidationGroup {
errors?: KnockoutValidationErrors;
isValid?: () => boolean;
isAnyMessageShown?: () => boolean;
}
interface KnockoutValidationLocalizationDictionary {
[key: string]: string;
}
interface KnockoutValidationStatic {
init(options?: KnockoutValidationConfiguration, force?: boolean): void;
reset(): void;
group(obj: any, options?: any): KnockoutValidationErrors;
formatMessage(message: string, params: string): string;
addRule<T>(observable: KnockoutObservable<T>, rule: KnockoutValidationRule): KnockoutObservable<T>;
addAnonymousRule(observable: KnockoutObservable<any>, ruleObj: KnockoutValidationAnonymousRuleDefinition): void;
insertValidationMessage(element: Element): Element;
parseInputValidationAttributes(element: Element, valueAccessor: () => KnockoutObservable<any>): void;
rules: KnockoutValidationRuleDefinitions;
addExtender(ruleName: string): void;
registerExtenders(): void;
utils: KnockoutValidationUtils;
localize(msgTranslations: KnockoutValidationLocalizationDictionary): void;
defineLocale(newLocale: string, msgTranslations: KnockoutValidationLocalizationDictionary): KnockoutValidationLocalizationDictionary;
locale(newLocale: string): string;
validateObservable(observable: KnockoutObservable<any>): boolean;
}
interface KnockoutStatic {
validation: KnockoutValidationStatic;
validatedObservable<T>(initialValue?: T): KnockoutObservable<T>;
applyBindingsWithValidation(viewModel: any, rootNode?: any, options?: KnockoutValidationConfiguration): void;
}
interface KnockoutSubscribableFunctions<T> {
isValid: KnockoutComputed<boolean>;
isValidating: KnockoutObservable<boolean>;
rules: KnockoutObservableArray<KnockoutValidationRule>;
isModified: KnockoutObservable<boolean>;
error: KnockoutComputed<string>;
setError(error: string): void;
clearError(): void;
}
declare module "knockout.validation" {
export = validation;
}
declare var validation: KnockoutValidationStatic