Dateien nach "gtm-architect" hochladen
This commit is contained in:
85
gtm-architect/types.ts
Normal file
85
gtm-architect/types.ts
Normal file
@@ -0,0 +1,85 @@
|
||||
export enum Phase {
|
||||
Input = 0,
|
||||
ProductAnalysis = 1,
|
||||
ICPDiscovery = 2,
|
||||
WhaleHunting = 3,
|
||||
Strategy = 4,
|
||||
AssetGeneration = 5,
|
||||
SalesEnablement = 6,
|
||||
}
|
||||
|
||||
export type Language = 'en' | 'de';
|
||||
export type Theme = 'light' | 'dark';
|
||||
|
||||
export interface Message {
|
||||
role: 'user' | 'model';
|
||||
content: string;
|
||||
}
|
||||
|
||||
export interface Phase1Data {
|
||||
features: string[];
|
||||
constraints: string[];
|
||||
conflictCheck: {
|
||||
hasConflict: boolean;
|
||||
details: string;
|
||||
relatedProduct?: string;
|
||||
};
|
||||
rawAnalysis: string;
|
||||
}
|
||||
|
||||
export interface Phase2Data {
|
||||
icps: {
|
||||
name: string;
|
||||
rationale: string;
|
||||
}[];
|
||||
dataProxies: {
|
||||
target: string;
|
||||
method: string;
|
||||
}[];
|
||||
}
|
||||
|
||||
export interface Phase3Data {
|
||||
whales: {
|
||||
industry: string;
|
||||
accounts: string[];
|
||||
}[];
|
||||
roles: string[];
|
||||
}
|
||||
|
||||
export interface Phase4Data {
|
||||
strategyMatrix: {
|
||||
segment: string;
|
||||
painPoint: string;
|
||||
angle: string;
|
||||
differentiation: string;
|
||||
}[];
|
||||
}
|
||||
|
||||
export interface Phase6Data {
|
||||
battlecards: {
|
||||
persona: string;
|
||||
objection: string;
|
||||
responseScript: string;
|
||||
}[];
|
||||
visualPrompts: {
|
||||
title: string;
|
||||
context: string;
|
||||
prompt: string;
|
||||
}[];
|
||||
}
|
||||
|
||||
export interface AppState {
|
||||
currentPhase: Phase;
|
||||
isLoading: boolean;
|
||||
history: Message[];
|
||||
productInput: string;
|
||||
productImages: string[]; // Array of Base64 strings
|
||||
phase1Result?: Phase1Data;
|
||||
phase2Result?: Phase2Data;
|
||||
phase3Result?: Phase3Data;
|
||||
phase4Result?: Phase4Data;
|
||||
phase5Result?: string; // Markdown content
|
||||
phase6Result?: Phase6Data;
|
||||
language: Language;
|
||||
theme: Theme;
|
||||
}
|
||||
Reference in New Issue
Block a user