Files
lehuo/packages/contracts/src/financial-disclosures.ts
T

56 lines
1.4 KiB
TypeScript
Raw Normal View History

export const FINANCIAL_DISCLOSURE_STATUSES = ['DRAFT', 'PUBLISHED', 'ARCHIVED'] as const;
export type FinancialDisclosureStatus = (typeof FINANCIAL_DISCLOSURE_STATUSES)[number];
export const FINANCIAL_DISCLOSURE_STATUS_LABELS: Record<FinancialDisclosureStatus, string> = {
DRAFT: '草稿',
PUBLISHED: '已发布',
ARCHIVED: '已归档',
};
export interface FinancialDisclosureListItem {
publicId: string;
title: string;
summary: string | null;
status: FinancialDisclosureStatus;
isPinned: boolean;
sortOrder: number;
revision: number;
publishedAt: string | null;
updatedAt: string;
}
export interface FinancialDisclosureDetail extends FinancialDisclosureListItem {
richText: string;
}
export interface PaginatedFinancialDisclosuresResponse {
items: FinancialDisclosureListItem[];
page: number;
pageSize: number;
total: number;
}
export interface FinancialDisclosureDetailResponse {
disclosure: FinancialDisclosureDetail;
}
export interface CreateFinancialDisclosureRequest {
clientRequestId: string;
title: string;
summary?: string;
richText: string;
isPinned?: boolean;
sortOrder?: number;
}
export interface UpdateFinancialDisclosureRequest {
expectedRevision: number;
title: string;
summary?: string;
richText: string;
isPinned?: boolean;
sortOrder?: number;
}
export interface TransitionFinancialDisclosureRequest {
clientRequestId: string;
targetStatus: 'PUBLISHED' | 'ARCHIVED';
}