otus-localization
Version:
A translation tool for Angular i18n(angular-t9n)
60 lines (59 loc) • 2.37 kB
TypeScript
import { BuilderContext, BuilderOutput } from '@angular-devkit/architect';
import { json, Path, workspaces, logging } from '@angular-devkit/core';
import { Options } from "../../server";
import { TargetPathBuilder, TranslationSource, TranslationTarget, TranslationTargetRegistry, PersistenceStrategy, SerializationStrategy } from "../../../server";
declare class AngularI18n {
private _host;
private _workspaceRoot;
private _projectName;
private _targetPathBuilder;
private _translationContextFactory;
constructor(_host: workspaces.WorkspaceHost, _workspaceRoot: Path, _projectName: string, _targetPathBuilder: TargetPathBuilder, _translationContextFactory: () => {
source: TranslationSource;
targetRegistry: TranslationTargetRegistry;
});
sourceLocale(): Promise<{
code: string;
baseHref?: string;
}>;
locales(): Promise<{
[locale: string]: {
translation: string[];
baseHref?: string;
};
}>;
update(): Promise<void>;
projectRelativePath(target: TranslationTarget): Path;
private _readProjectI18n;
private _readProject;
private _i18nLocale;
private _normalizeI18nLocale;
}
interface AngularJsonI18n {
sourceLocale?: string | {
code: string;
baseHref: string;
};
locales?: {
[locale: string]: AngularJsonI18nLocale;
};
}
type AngularJsonI18nLocale = string | string[] | {
translation: string | string[];
baseHref?: string;
};
declare class AngularJsonPersistenceStrategy extends PersistenceStrategy {
private readonly _i18n;
private readonly _logger;
private readonly _serializationStrategy;
constructor(_i18n: AngularI18n, _logger: logging.Logger, _serializationStrategy: SerializationStrategy);
create(target: TranslationTarget): Promise<void>;
update(target: TranslationTarget): Promise<void>;
private _write;
private _updateProjectI18n;
}
declare const _default: import("@angular-devkit/architect/src/internal").Builder<Options & json.JsonObject>;
declare function t9n(options: Options, context: BuilderContext): Promise<BuilderOutput>;
export * from '../../server';
export { Options as t9nOptions } from "../../server";
export { _default as default, AngularI18n, AngularJsonI18n, AngularJsonI18nLocale, AngularJsonPersistenceStrategy, t9n };