48 lines
1.4 KiB
TypeScript
48 lines
1.4 KiB
TypeScript
import type { AxiosResponse } from "axios";
|
|
import type { PageableList, PageableParams } from "@/shared/model";
|
|
|
|
export interface AttachmentParams extends PageableParams {
|
|
keywordType?: string;
|
|
keyword?: string;
|
|
atflCd?: string;
|
|
atflSn?: number;
|
|
atflId?: string;
|
|
orgnlFileNm?: string;
|
|
atflFlieSz?: number;
|
|
atflType?: string;
|
|
dwnldNocs?: number;
|
|
delYn?: string;
|
|
lnkgDmnId?: string;
|
|
lnkgDmnNm?: string;
|
|
}
|
|
|
|
export interface Attachment {
|
|
atflCd: string;
|
|
atflSn: number;
|
|
atflId: string;
|
|
physFileNm: string;
|
|
orgnlFileNm: string;
|
|
atflFlieSz: number;
|
|
atflType: string;
|
|
dwnldNocs: number;
|
|
delYn: string;
|
|
lnkgDmnId: string;
|
|
lnkgDmnNm: string;
|
|
regDt: string;
|
|
}
|
|
|
|
export type AttachmentList = PageableList<Attachment>;
|
|
|
|
export interface AttachmentService {
|
|
getAttachmentsList: (params: AttachmentParams) => Promise<AttachmentList>;
|
|
getAttachmentsInfo: (atflCd: string) => Promise<Attachment[]>;
|
|
deleteAttachmentByAtflId: (atflId: string) => Promise<void>;
|
|
deleteAttachmentByAtflCd: (atflCd: string) => Promise<void>;
|
|
getImageUrlByAtflId: (atflId: string) => Promise<string>;
|
|
getImageUrlByAtflCd: (atflCd: string) => Promise<string>;
|
|
getStreamVideoUrlByAtflId: (atflId: string) => Promise<string>;
|
|
getMovieThumbnailUrlByAtflId: (atflId: string) => Promise<string>;
|
|
getMovieThumbnailUrlByAtflCd: (atflCd: string) => Promise<string>;
|
|
downloadAttachmentByAtflCd: (atflCd: string) => Promise<AxiosResponse>;
|
|
}
|