UNPKG

declarations

Version:

[![npm version](https://badge.fury.io/js/declarations.svg)](https://www.npmjs.com/package/declarations)

260 lines (251 loc) 13 kB
// Type definitions for Apache Cordova Globalization plugin. // Project: https://github.com/apache/cordova-plugin-globalization // Definitions by: Microsoft Open Technologies, Inc. <http://msopentech.com> // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // // Copyright (c) Microsoft Open Technologies, Inc. // Licensed under the MIT license. interface Navigator { /** This plugin obtains information and performs operations specific to the user's locale and timezone. */ globalization: Globalization } /** This plugin obtains information and performs operations specific to the user's locale and timezone. */ interface Globalization { /** * Get the string identifier for the client's current language. * @param onSuccess Called on success getting the language with a properties object, * that should have a value property with a String value. * @param onError Called on error getting the language with a GlobalizationError object. * The error's expected code is GlobalizationError.UNKNOWN_ERROR. */ getPreferredLanguage( onSuccess: (language: { value: string; }) => void, onError: (error: GlobalizationError) => void): void; /** * Get the string identifier for the client's current locale setting. * @param onSuccess Called on success getting the locale identifier with a properties object, * that should have a value property with a String value. * @param onError Called on error getting the locale identifier with a GlobalizationError object. * The error's expected code is GlobalizationError.UNKNOWN\_ERROR. */ getLocaleName( onSuccess: (locale: { value: string; }) => void, onError: (error: GlobalizationError) => void): void; /** * Returns a date formatted as a string according to the client's locale and timezone. * @param date Date to format. * @param onSuccess Called on success with a properties object, * that should have a value property with a String value. * @param onError Called on error with a GlobalizationError object. * The error's expected code is GlobalizationError.FORMATTING_ERROR. * @param options Optional format parameters. Default {formatLength:'short', selector:'date and time'} * - 'formatLength' can be "short", "medium", "long", or "full". * - 'selector' can be "date", "time", or "date and time". */ dateToString( date: Date, onSuccess: (date: { value: string; }) => void, onError: (error: GlobalizationError) => void, options?: { formatLength?: string; // "short" | "medium" | "long" | "full" selector?: string; // "date" | "time" | "date and time" }): void; /** * Parses a date formatted as a string, according to the client's user preferences * and calendar using the time zone of the client, and returns the corresponding date object. * @param dateString String to parse * @param onSuccess Called on success with GlobalizationDate object * @param onError Called on error getting the language with a GlobalizationError object. * The error's expected code is GlobalizationError.PARSING_ERROR. * @param options Optional parse parameters. Default {formatLength:'short', selector:'date and time'} */ stringToDate( dateString: string, onSuccess: (date: GlobalizationDate) => void, onError: (error: GlobalizationError) => void, options?: { type?: string; item?: string; }): void; /** * Returns a pattern string to format and parse dates according to the client's user preferences. * @param onSuccess Called on success getting pattern with a GlobalizationDatePattern object * @param onError Called on error getting pattern with a GlobalizationError object. * The error's expected code is GlobalizationError.PATTERN_ERROR. * @param options Optional format parameters. Default {formatLength:'short', selector:'date and time'} */ getDatePattern( onSuccess: (datePattern: GlobalizationDatePattern) => void, onError: (error: GlobalizationError) => void, options?: { type?: string; item?: string; }): void; /** * Returns an array of the names of the months or days of the week, depending on the client's user preferences and calendar. * @param onSuccess Called on success getting names with a properties object, * that should have a value property with a String[] value. * @param onError Called on error getting the language with a GlobalizationError object. * The error's expected code is GlobalizationError.UNKNOWN_ERROR. * @param options Optional parameters. Default: {type:'wide', item:'months'} */ getDateNames( onSuccess: (names: { value: string[]; }) => void, onError: (error: GlobalizationError) => void, options?: { type?: string; item?: string; }): void; /** * Indicates whether daylight savings time is in effect for a given date using the client's time zone and calendar. * @param {Date} date Date to check * @param onSuccess Called on success with a properties object, * that should have a dst property with a boolean value. * @param onError Called on error with a GlobalizationError object. * The error's expected code is GlobalizationError.UNKNOWN_ERROR. */ isDaylightSavingsTime( date: Date, onSuccess: (result: { dst: boolean; }) => void, onError: (error: GlobalizationError) => void): void; /** * Returns the first day of the week according to the client's user preferences and calendar. * @param onSuccess Called on success with a day object, * that should have a value property with a number value. * @param onError Called on error with a GlobalizationError object. * The error's expected code is GlobalizationError.UNKNOWN_ERROR. */ getFirstDayOfWeek( onSuccess: (day: { value: number; }) => void, onError: (error: GlobalizationError) => void): void; /** * Returns a number formatted as a string according to the client's user preferences. * @param value Number to format * @param onSuccess Called on success with a result object, * that should have a value property with a String value. * @param onError Called on error with a GlobalizationError object. * The error's expected code is GlobalizationError.FORMATTING_ERROR. * @param format Optional format parameters. Default: {type:'decimal'} */ nubmerToString( value: number, onSuccess: (result: { value: string; }) => void, onError: (error: GlobalizationError) => void, format?: { type?: string; }): void; /** * Parses a number formatted as a string according to the client's user preferences and returns the corresponding number. * @param value String to parse * @param onSuccess Called on success with a result object, * that should have a value property with a number value. * @param onError Called on error with a GlobalizationError object. * The error's expected code is GlobalizationError.FORMATTING_ERROR. * @param format Optional format parameters. Default: {type:'decimal'} */ stringToNumber( value: string, onSuccess: (result: { value: number; }) => void, onError: (error: GlobalizationError) => void, format?: { type?: string; }): void; /** * Returns a pattern string to format and parse numbers according to the client's user preferences. * @param onSuccess Called on success getting pattern with a GlobalizationNumberPattern object * @param onError Called on error getting the language with a GlobalizationError object. * The error's expected code is GlobalizationError.PATTERN_ERROR. * @param options Optional format parameters. Default {type:'decimal'}. */ getNumberPattern( onSuccess: (result: GlobalizationNumberPattern) => void, onError: (error: GlobalizationError) => void, format?: { type?: string; }): void; /** * Returns a pattern string to format and parse currency values according to the client's user preferences and ISO 4217 currency code. * @param currencyCode Should be a String of one of the ISO 4217 currency codes, for example 'USD'. * @param onSuccess Called on success getting pattern with a GlobalizatioCurrencyPattern object * @param onError Called on error getting pattern with a GlobalizationError object. * The error's expected code is GlobalizationError.FORMATTING_ERROR. * @param options Optional format parameters. Default {type:'decimal'}. */ getCurrencyPattern( currencyCode: string, onSuccess: (result: GlobalizationCurrencyPattern) => void, onError: (error: GlobalizationError) => void): void; } /** Date returned by stringToDate */ interface GlobalizationDate { /* The four digit year. */ year: number; /* The month from (0-11). */ month: number; /* The day from (1-31). */ day: number; /* The hour from (0-23). */ hour: number; /* The minute from (0-59). */ minute: number; /* The second from (0-59). */ second: number; /* The milliseconds (from 0-999), not available on all platforms. */ millisecond: number; } /** Pattern to format and parse dates according to the client's user preferences.*/ interface GlobalizationDatePattern { /* The date and time pattern to format and parse dates. The patterns follow Unicode Technical Standard #35. */ pattern: string; /* The abbreviated name of the time zone on the client. */ timezone: string; /* The current difference in seconds between the client's time zone and coordinated universal time. */ utc_offset: number; /* The current daylight saving time offset in seconds between the client's non-daylight saving's time zone and the client's daylight saving's time zone. */ dst_offset: number; } interface GlobalizationDateNameOptions { type?: string; item?: string; } /** Pattern to format and parse numbers according to the client's user preferences. */ interface GlobalizationNumberPattern { /* The number pattern to format and parse numbers. The patterns follow Unicode Technical Standard #35. */ pattern: string; /* The symbol to use when formatting and parsing, such as a percent or currency symbol. */ symbol: string; /* The number of fractional digits to use when parsing and formatting numbers. */ fraction: number; /* The rounding increment to use when parsing and formatting. */ rounding: number; /* The symbol to use for positive numbers when parsing and formatting. */ positive: string; /* The symbol to use for negative numbers when parsing and formatting. */ negative: string; /* The decimal symbol to use for parsing and formatting. */ decimal: string; /* The grouping symbol to use for parsing and formatting. */ grouping: string; } /** * Pattern to format and parse currency values according * to the client's user preferences and ISO 4217 currency code. */ interface GlobalizationCurrencyPattern { /** The currency pattern to format and parse currency values. The patterns follow Unicode Technical Standard #35. */ pattern: string; /** The ISO 4217 currency code for the pattern. */ code: string; /** The number of fractional digits to use when parsing and formatting currency. */ fraction: number; /** The rounding increment to use when parsing and formatting. */ rounding: number; /** The decimal symbol to use for parsing and formatting. */ decimal: string; /** The grouping symbol to use for parsing and formatting. */ grouping: string; } /** An object representing a error from the Globalization API. */ interface GlobalizationError { /** One of the following codes representing the error type: * GlobalizationError.UNKNOWN_ERROR: 0 * GlobalizationError.FORMATTING_ERROR: 1 * GlobalizationError.PARSING_ERROR: 2 * GlobalizationError.PATTERN_ERROR: 3 */ code: number; /** A text message that includes the error's explanation and/or details */ message: string; } /** An object representing a error from the Globalization API. */ declare var GlobalizationError: { UNKNOWN_ERROR: number; FORMATTING_ERROR: number; PARSING_ERROR: number; PATTERN_ERROR: number; }