UNPKG

vscode-nls-dev

Version:

Development time npm module to generate strings bundles from Javascript files

81 lines (80 loc) 3 kB
import { RawSourceMap } from 'source-map'; export interface Map<V> { [key: string]: V; } export interface LocalizeInfo { key: string; comment: string[]; } export declare namespace LocalizeInfo { function is(value: any): value is LocalizeInfo; } export declare type KeyInfo = string | LocalizeInfo; export declare namespace KeyInfo { function key(value: KeyInfo): string; function comment(value: KeyInfo): string[] | undefined; } export interface JavaScriptMessageBundle { messages: string[]; keys: KeyInfo[]; } export declare namespace JavaScriptMessageBundle { function is(value: any): value is JavaScriptMessageBundle; } export interface ResolvedJavaScriptMessageBundle { messages: string[]; keys: string[]; map: Map<string>; } export declare namespace ResolvedJavaScriptMessageBundle { function is(value: any): value is ResolvedJavaScriptMessageBundle; function asTranslatedMessages(bundle: ResolvedJavaScriptMessageBundle, translatedMessages: Map<string> | undefined, problems: string[]): string[]; } export interface PackageJsonMessageBundle { [key: string]: string; } export declare namespace PackageJsonMessageBundle { function asTranslatedMessages(bundle: PackageJsonMessageBundle, translatedMessages: Map<string> | undefined, problems: string[]): Map<string>; } export declare function processFile(contents: string, relativeFileName?: string, baseDir?: string, sourceMap?: string | RawSourceMap): { contents?: string; sourceMap?: string; bundle?: JavaScriptMessageBundle; errors: string[]; }; export declare function resolveMessageBundle(bundle: JavaScriptMessageBundle): ResolvedJavaScriptMessageBundle; export declare function resolveMessageBundle(bundle: PackageJsonMessageBundle): PackageJsonMessageBundle; export interface LocalizedMessagesResult { messages: string[] | Map<String>; problems: string[]; } export declare function createLocalizedMessages(filename: string, bundle: ResolvedJavaScriptMessageBundle | PackageJsonMessageBundle, languageFolderName: string, i18nBaseDir: string, baseDir?: string): LocalizedMessagesResult; export declare function bundle2keyValuePair(bundle: JavaScriptMessageBundle, commentSeparator?: string | undefined): any; export declare function removePathPrefix(path: string, prefix: string): string; export interface SingleMetaDataFile { messages: string[]; keys: KeyInfo[]; filePath: string; } export interface BundledMetaDataEntry { messages: string[]; keys: KeyInfo[]; } export interface BundledMetaDataHeader { id: string; type: string; hash: string; outDir: string; } export interface BundledMetaDataFile { [key: string]: BundledMetaDataEntry; } export declare class MetaDataBundler { private id; private outDir; private content; get size(): number; constructor(id: string, outDir: string); add(file: SingleMetaDataFile): void; bundle(): [BundledMetaDataHeader, BundledMetaDataFile]; }