DefinitelyTyped/string-template/string-template.d.ts
TonyYang 272ae64e97 [string-template] Add a new type definition (#11949)
* Create string-template.d.ts

* Create string-template-tests.ts
2016-10-16 22:15:54 +09:00

53 lines
1.2 KiB
TypeScript

// Type definitions for string-template 1.0.0
// Project: https://www.npmjs.com/package/string-template
// Definitions by: TonyYang <https://github.com/TonyPythoneer>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
/**
* NAMESPACE
*/
declare namespace StringTemplate {
/**
* Format
*/
interface Format {
// Format using an object hash with keys matching [0-9a-zA-Z]+
(string: string, object: any): string;
// Format using a number indexed array
(string: string, array: Array<any>): string;
// Format using optional arguments
(string: string, ...array: Array<any>): string;
// Escape {} pairs by using double {{}}
(string: string): string;
}
/**
* Compile
*/
interface Compile {
(string: string, inline?: boolean): Template;
}
interface Template {
(object: any): string;
(array: Array<any>): string;
(...array: Array<any>): string;
}
}
/**
* MODULES
*/
declare module "string-template" {
const format: StringTemplate.Format;
export = format;
}
declare module "string-template/compile" {
const comile: StringTemplate.Compile;
export = comile;
}