frontend first version
This commit is contained in:
73
src/types/index.ts
Normal file
73
src/types/index.ts
Normal file
@@ -0,0 +1,73 @@
|
||||
// Flow Types
|
||||
export type FlowRecordType = 'text' | 'voice' | 'image';
|
||||
|
||||
export interface FlowRecord {
|
||||
id: string;
|
||||
type: FlowRecordType;
|
||||
content: string;
|
||||
imageUri?: string;
|
||||
createdAt: Date;
|
||||
emotion?: string;
|
||||
isArchived: boolean;
|
||||
archivedAt?: Date;
|
||||
}
|
||||
|
||||
// Vault Types
|
||||
export type VaultAssetType =
|
||||
| 'game_account'
|
||||
| 'private_key'
|
||||
| 'document'
|
||||
| 'photo'
|
||||
| 'will'
|
||||
| 'custom';
|
||||
|
||||
export interface VaultAsset {
|
||||
id: string;
|
||||
type: VaultAssetType;
|
||||
label: string;
|
||||
createdAt: Date;
|
||||
updatedAt: Date;
|
||||
isEncrypted: boolean;
|
||||
}
|
||||
|
||||
// Sentinel Types
|
||||
export type SystemStatus = 'normal' | 'warning' | 'releasing';
|
||||
|
||||
export interface SentinelState {
|
||||
status: SystemStatus;
|
||||
lastSubscriptionCheck: Date;
|
||||
lastFlowActivity: Date;
|
||||
killSwitchLogs: KillSwitchLog[];
|
||||
}
|
||||
|
||||
export interface KillSwitchLog {
|
||||
id: string;
|
||||
action: string;
|
||||
timestamp: Date;
|
||||
}
|
||||
|
||||
// Heritage Types
|
||||
export type HeirStatus = 'invited' | 'confirmed';
|
||||
export type PaymentStrategy = 'prepaid' | 'pay_on_access';
|
||||
|
||||
export interface Heir {
|
||||
id: string;
|
||||
name: string;
|
||||
email: string;
|
||||
status: HeirStatus;
|
||||
releaseLevel: number; // 1-3
|
||||
releaseOrder: number;
|
||||
paymentStrategy: PaymentStrategy;
|
||||
}
|
||||
|
||||
// Me Types
|
||||
export interface SubscriptionInfo {
|
||||
plan: string;
|
||||
expiresAt: Date;
|
||||
isActive: boolean;
|
||||
}
|
||||
|
||||
export interface ProtocolInfo {
|
||||
version: string;
|
||||
lastUpdated: Date;
|
||||
}
|
||||
Reference in New Issue
Block a user