mirror of
https://github.com/devonthesofa/obsidian-note-status.git
synced 2026-07-22 12:30:24 +00:00
40 lines
No EOL
1 KiB
TypeScript
40 lines
No EOL
1 KiB
TypeScript
import { TFile, View } from 'obsidian';
|
|
|
|
/**
|
|
* Defines a status with name, icon and color
|
|
*/
|
|
export interface Status {
|
|
name: string;
|
|
icon: string;
|
|
color?: string; // Optional color property
|
|
}
|
|
|
|
/**
|
|
* Plugin settings interface
|
|
*/
|
|
export interface NoteStatusSettings {
|
|
statusColors: Record<string, string>;
|
|
showStatusDropdown: boolean;
|
|
showStatusBar: boolean;
|
|
dropdownPosition: 'top' | 'bottom';
|
|
statusBarPosition: 'left' | 'right';
|
|
autoHideStatusBar: boolean;
|
|
customStatuses: Status[];
|
|
showStatusIconsInExplorer: boolean;
|
|
collapsedStatuses: Record<string, boolean>;
|
|
compactView: boolean;
|
|
enabledTemplates: string[]; // IDs of enabled templates
|
|
useCustomStatusesOnly: boolean; // Whether to use only custom statuses or include templates
|
|
}
|
|
|
|
/**
|
|
* Extended interface for file explorer view
|
|
*/
|
|
export interface FileExplorerView extends View {
|
|
fileItems: Record<string, {
|
|
el?: HTMLElement;
|
|
file?: TFile;
|
|
titleEl?: HTMLElement;
|
|
selfEl?: HTMLElement;
|
|
}>;
|
|
} |