what-is-surprise
Version:
translate tool
65 lines (64 loc) • 2.2 kB
TypeScript
import { Lang } from './constants';
import { IBaseFanyiConfig } from '../../BaseFanyi';
export interface IYoudaoFanyiConfig<L extends string = Lang> {
/** 待翻译文本 必须是UTF-8编码 */
q: string;
/** 源语言 参考下方 支持语言 (可设置为auto) */
from: L;
/** 目标语言 参考下方 支持语言 (可设置为auto) */
to: L;
/** 应用ID 可在 应用管理 查看 */
appKey: string;
/** 应用密钥 */
appSecret: string;
/** UUID UUID */
salt: string;
/** 签名 sha256(应用ID+input+salt+curtime+应用密钥) */
sign: string;
/** 签名类型 v3 */
signType: 'v3';
/** 当前UTC时间戳(秒) TimeStamp */
curtime: string;
/** 翻译结果音频格式,支持mp3 false mp3 */
ext?: 'mp3';
/** 翻译结果发音选择
* 0为女声,1为男声。默认为女声 */
voice?: '0' | '1';
/** 是否严格按照指定from和to进行翻译:true/false false 如果为false,
* 则会自动中译英,英译中。默认为false */
strict?: 'true' | 'false';
/** 用户上传的词典 false 用户指定的词典 out_id,目前支持英译中 */
vocabId?: string;
}
export declare class YoudaoFanyiConfig implements IYoudaoFanyiConfig, IBaseFanyiConfig<Lang> {
q: string;
from: Lang;
to: Lang;
appKey: string;
appSecret: string;
salt: string;
sign: string;
signType: 'v3';
curtime: string;
ext?: 'mp3' | undefined;
voice?: '0' | '1' | undefined;
strict?: 'true' | 'false' | undefined;
vocabId?: string | undefined;
constructor(config?: Partial<IYoudaoFanyiConfig>);
update(part: Partial<IYoudaoFanyiConfig>): void;
updateQuery(query: string): this;
updateAppKey(appKey: string): this;
updateAppSecret(appSecret: string): this;
updateSalt(salt?: string): this;
udpateCurtime(curtime?: string): this;
setLangFrom(lang: Lang): this;
setLangTo(lang: Lang): this;
/**
* 签名生成
*/
updateSign(): void;
/**
* 创建冻结副本
*/
release(this: YoudaoFanyiConfig): Readonly<Omit<YoudaoFanyiConfig, "updateSign" | "release">>;
}