46 lines
1.0 KiB
TypeScript
46 lines
1.0 KiB
TypeScript
export type DocumentType = 'markdown' | 'text' | 'pdf' | 'code';
|
|
|
|
export interface Document {
|
|
id: string;
|
|
title: string;
|
|
content: string;
|
|
type: DocumentType;
|
|
folder: string;
|
|
tags: string[];
|
|
createdAt: string;
|
|
updatedAt: string;
|
|
size: number;
|
|
description?: string;
|
|
}
|
|
|
|
export interface Folder {
|
|
id: string;
|
|
name: string;
|
|
count: number;
|
|
}
|
|
|
|
export interface DocumentFilter {
|
|
search: string;
|
|
folder: string | null;
|
|
tags: string[];
|
|
type: DocumentType | null;
|
|
}
|
|
|
|
export const DOCUMENT_TYPE_ICONS: Record<DocumentType, string> = {
|
|
markdown: 'markdown',
|
|
text: 'text',
|
|
pdf: 'pdf',
|
|
code: 'code',
|
|
};
|
|
|
|
export const DOCUMENT_TYPE_COLORS: Record<DocumentType, string> = {
|
|
markdown: 'text-blue-500 bg-blue-500/10',
|
|
text: 'text-gray-500 bg-gray-500/10',
|
|
pdf: 'text-red-500 bg-red-500/10',
|
|
code: 'text-green-500 bg-green-500/10',
|
|
};
|
|
|
|
export const DEFAULT_FOLDERS = ['General', 'Projects', 'Notes', 'Archive'];
|
|
|
|
export const DEFAULT_TAGS = ['important', 'draft', 'review', 'reference', 'idea'];
|