46 lines
1.2 KiB
TypeScript
46 lines
1.2 KiB
TypeScript
export interface GeoPlanAction {
|
|
id: string;
|
|
plan_id: string;
|
|
action_type: "content_creation" | "content_optimization" | "query_expansion" | "schema_optimization" | "platform_targeting";
|
|
title: string;
|
|
description: string;
|
|
reason: string;
|
|
priority: "high" | "medium" | "low";
|
|
status: "pending" | "in_progress" | "completed" | "skipped";
|
|
target_keyword: string | null;
|
|
target_platform: string | null;
|
|
content_style: string | null;
|
|
estimated_impact: string | null;
|
|
difficulty: "easy" | "medium" | "hard";
|
|
execution_params: Record<string, unknown> | null;
|
|
sort_order: number;
|
|
completed_at: string | null;
|
|
created_at: string;
|
|
}
|
|
|
|
export interface GeoPlan {
|
|
id: string;
|
|
brand_id: string;
|
|
title: string;
|
|
status: "draft" | "active" | "completed" | "archived";
|
|
diagnosis_score: number;
|
|
target_score: number;
|
|
estimated_weeks: number;
|
|
plan_data: Record<string, unknown> | null;
|
|
source: string;
|
|
actions: GeoPlanAction[];
|
|
created_at: string;
|
|
updated_at: string;
|
|
}
|
|
|
|
export interface GeoPlanListResponse {
|
|
plans: GeoPlan[];
|
|
total: number;
|
|
}
|
|
|
|
export interface GeoPlanActionExecuteResponse {
|
|
action_id: string;
|
|
content_id: string | null;
|
|
message: string;
|
|
}
|