import { ChangeDetectorRef, OnInit } from '@angular/core'; import { MsgTemplateEdit } from '../../msg-interface/msg-template-edit'; import { FormGroup } from '@angular/forms'; import { ModalHelper } from '@delon/theme'; import { DialogService, PermissionControlService, TemplateService } from 'mmmo-mo-common-lib'; import { TemplateEditData } from '../../msg-interface/data-model'; export declare class VoiceTplEditComponent implements MsgTemplateEdit, OnInit { private permissionControl; private templateService; private dialogService; private modal; private cdr; SCENE: string; /** 数据源 */ source: TemplateEditData; /** 辅助 --消息类型 */ _MSGTYPES: { MO: { SMS: { type: number; name: string; icon: string; }; VOICE: { type: number; name: string; icon: string; }; WECHAT: { type: number; name: string; icon: string; }; EMAIL: { type: number; name: string; icon: string; }; WORKWX: { type: number; name: string; icon: string; }; _5G: { type: number; name: string; icon: string; }; TIKTOK: { type: number; name: string; icon: string; }; }; MT: { SMS: { type: number; name: string; key: string; icon: string; icon_gray: string; patchTypes: string; autoReport: number; autoReply: number; channelProvider: number; channel: number; moRecord: number; }; MMS: { type: number; name: string; key: string; icon: string; icon_gray: string; patchTypes: string; autoReport: number; autoReply: number; channelProvider: number; channel: number; moRecord: number; }; WECHAT: { type: number; name: string; key: string; icon: string; icon_gray: string; patchTypes: string; autoReport: number; autoReply: number; channelProvider: number; channel: number; moRecord: number; }; VOICE: { type: number; name: string; key: string; icon: string; icon_gray: string; patchTypes: string; autoReport: number; autoReply: number; channelProvider: number; channel: number; moRecord: number; }; EMAIL: { type: number; name: string; key: string; icon: string; icon_gray: string; patchTypes: string; autoReport: number; autoReply: number; channelProvider: number; channel: number; moRecord: number; }; WEIBO: { type: number; name: string; key: string; icon: string; icon_gray: string; patchTypes: string; autoReport: number; autoReply: number; channelProvider: number; channel: number; moRecord: number; }; JPUSH: { type: number; name: string; key: string; icon: string; icon_gray: string; patchTypes: string; autoReport: number; autoReply: number; channelProvider: number; channel: number; moRecord: number; }; TIKTOK: { type: number; name: string; key: string; icon: string; icon_gray: string; patchTypes: string; autoReport: number; channelProvider: number; channel: number; moRecord: number; }; WORKWX: { type: number; name: string; key: string; icon: string; icon_gray: string; patchTypes: string; autoReport: number; autoReply: number; channelProvider: number; channel: number; moRecord: number; }; _5G: { type: number; name: string; key: string; icon: string; icon_gray: string; patchTypes: string; autoReport: number; autoReply: number; channelProvider: number; channel: number; moRecord: number; }; }; getMsgList: (isMo?: any) => any[]; getMsgListByTypes: (isMo: any, ...msgTypes: any[]) => any[]; getMsgNamesByTypes: (isMo: any, msgTypes: any, separator?: any) => string; getMsgByType: (isMo: any, msgType: any) => any; getMsgByName: (isMo: any, msgName: any) => {}; getMsgTplOptions: typeof import("../../shared/constant/msgType").getMsgTplOptions; }; type: number; /** 辅助 -- 模板内容最大字数 */ maxLength: number; /** 重要 -- 新增的空白模板 */ standardTemplate: { id: number; name: string; priority: any; msgType: number; bizTypeId: null; mediaList: any[]; contentType: any; content: string; title: any; copyValue: number; operateType: string; isDefault: boolean; editIndex: number; conditions: any[]; vIndex: number; patchStrategy: any[]; }; form: FormGroup; isHasPaster: boolean; isPassPattern: boolean; isValidContent: boolean; constructor(permissionControl: PermissionControlService, templateService: TemplateService, dialogService: DialogService, modal: ModalHelper, cdr: ChangeDetectorRef); ngOnInit(): void; setFormData(data: any): void; getData(): any[]; validate(): boolean; /** 添加一些辅助的字段 */ processTemplate(template: any, isNew?: boolean): void; /** 模板增加后的回调 */ updateHandle(): void; /** 复用操作 */ copyHandle(template: any, index: number): void; /** 手动驱动校验 */ cleanupDirty(): void; /** * 插入业务变量 (通过光标位置进行插值) * @param value 传入的变量值 * @param template 模板对象 */ insertVar(value: any, index: any): void; /** * 设置光标的位置 * @param event 点击事件 * @param template 模板对象 */ setCursorPositionByEvent(event: any, template: any): void; setCursorOffset($event: any, template: any): void; /** 贴片选择弹窗 */ openPatchModal(template: any, contentType: any): void; /** 贴片选择后处理 */ afterHandleForPatchSelected(template: any, result: any): void; /** 贴片检测 */ checkPatch(patchStrategy: any[]): boolean; /** 监听文本框的输入 */ inputChange(template: any): void; handelValueChange($event: any, template: any): void; }