Files
frontend/apps/cs/src/entities/ntftalk/model/ntftalk-temp-interface.ts
T

120 lines
3.0 KiB
TypeScript

import type { PageableList, PageableParams } from "@/shared/model";
export interface NtftalkTempSearchParams extends PageableParams {
templateCode?: string;
templateName?: string;
/** 백엔드 스펙 확정 시 전달 */
templateContent?: string;
inspectionStatus?: string;
senderKey?: string;
status?: string;
/** 백엔드 스펙 확정 시 전달 */
templateMessageType?: string;
}
export interface NtftalkBtnTemp {
templateCode: string;
name: string;
ordering: number;
linkType: string;
linkMo: string;
linkPc: string;
linkAnd: string;
linkIos: string;
}
export interface NtftalkQuickTemp {
templateCode: string;
name: string;
linkType: string;
linkMo: string;
linkPc: string;
linkAnd: string;
linkIos: string;
}
export interface NtftalkTemp {
templateCode: string;
senderKey: string;
senderKeyType: string;
templateName: string;
templateContent: string;
templateMessageType: string;
templateMessageTypeNm: string;
templateEmphasizeType: string;
templateEmphasizeTypeNm: string;
templateImageUrl: string;
inspectionStatus: string;
inspectionStatusNm: string;
status: string;
statusNm: string;
createdAt: string;
modifiedAt: string;
buttons?: NtftalkBtnTemp[];
quickReplies?: NtftalkQuickTemp[];
}
export interface NtftalkBtnTempSavePayload {
templateCode?: string;
name: string;
ordering: number;
linkType: string;
linkMo?: string;
linkPc?: string;
linkAnd?: string;
linkIos?: string;
}
export interface NtftalkQuickTempSavePayload {
templateCode?: string;
name: string;
linkType: string;
linkMo?: string;
linkPc?: string;
linkAnd?: string;
linkIos?: string;
}
export interface NtftalkTempSavePayload {
templateCode: string;
senderKey: string;
senderKeyType: string;
templateName: string;
templateContent: string;
templateMessageType: string;
templateEmphasizeType: string;
templateImageUrl?: string;
inspectionStatus?: string;
buttons?: NtftalkBtnTempSavePayload[];
quickReplies?: NtftalkQuickTempSavePayload[];
}
export interface NtftalkTempUpdatePayload {
templateName: string;
templateContent: string;
inspectionStatus?: string;
status?: string;
buttons?: NtftalkBtnTempSavePayload[];
quickReplies?: NtftalkQuickTempSavePayload[];
}
export interface NtftalkTempDeleteMultiPayload {
templateCodes: string[];
}
export type NtftalkTempPageList = PageableList<NtftalkTemp>;
export interface NtftalkTempService {
getNtftalkTempPage(
params: NtftalkTempSearchParams,
): Promise<NtftalkTempPageList>;
getNtftalkTemp(templateCode: string): Promise<NtftalkTemp>;
saveNtftalkTemp(payload: NtftalkTempSavePayload): Promise<NtftalkTemp>;
updateNtftalkTemp(
templateCode: string,
payload: NtftalkTempUpdatePayload,
): Promise<NtftalkTemp>;
deleteNtftalkTemp(templateCode: string): Promise<void>;
deleteMultiNtftalkTemp(payload: NtftalkTempDeleteMultiPayload): Promise<void>;
}