///
///
import { BusinessProfileStatus } from './business-profile.interface';
export type DocumentType = 'PERSONAL_ID_NAME' | 'BUSINESS_REGISTRATION_CERTIFICATE' | 'OTHER';
export type ReviewStatus = 'NEW' | 'ACCEPT' | 'REJECT';
export interface DocumentFile {
file: Buffer;
name?: string;
}
export interface DocumentInfo {
url: string;
name: string;
type: string;
documentType?: string;
subCategoryId?: number;
}
export interface DocumentFileResponse {
url: string;
name: string;
documentType: string;
subCategoryId: number;
isNew: boolean;
type?: string;
}
export interface SubmitOwnerDocumentsRequest {
miniAppId: string;
ownerDocumentFiles?: DocumentFile[];
documentFiles?: DocumentInfo[];
}
export interface SubmitOwnerDocumentsResponse {
error: number;
message: string;
data?: {
ownerDocumentResults: DocumentRequestResult;
};
}
export interface DocumentRequestResult {
id: number;
appId: string;
documentFiles: DocumentFileResponse[];
reviewStatus: string;
ownerId: string;
reviewerId: string;
createdAt: number;
reviewNote: string;
needPhysicalDocument: boolean;
}
export interface DocumentRequest {
id: number;
appId: string;
documentFiles: DocumentFileResponse[];
reviewStatus: ReviewStatus;
ownerId: string;
reviewerId: string;
createdAt: number;
reviewNote: string;
needPhysicalDocument: boolean;
}
export interface GetDocumentRequestRequest {
miniAppId: string;
}
export interface GetDocumentRequestResponse {
error: number;
message: string;
ownerRequests: DocumentRequest[];
businessRequests?: DocumentRequest[];
additionalRequests?: DocumentRequest[];
businessStatus: BusinessProfileStatus;
}