176 lines
4.5 KiB
TypeScript
176 lines
4.5 KiB
TypeScript
export type AgentPresetType = "image" | "video" | "text";
|
|
export type AgentPresetVisibility = "public" | "private";
|
|
export type AgentCategoryScope = "public" | "private" | "global";
|
|
export type AgentPresetStatus = "active" | "disabled" | "hidden" | "blocked";
|
|
|
|
export interface AgentCategoryPath {
|
|
productCategory?: string | null;
|
|
audienceTag?: string | null;
|
|
usageScenario?: string | null;
|
|
brand?: string | null;
|
|
}
|
|
|
|
export interface AgentCategoryTreeConfig {
|
|
productCategories: string[];
|
|
audienceTags: string[];
|
|
usageScenarios: string[];
|
|
brands: string[];
|
|
}
|
|
|
|
export interface AgentCategory {
|
|
id: string;
|
|
name: string;
|
|
slug: string;
|
|
scope: AgentCategoryScope;
|
|
createdBy?: string | null;
|
|
sortOrder: number;
|
|
isEnabled: boolean;
|
|
createdAt: string | Date;
|
|
updatedAt: string | Date;
|
|
}
|
|
|
|
export interface AgentReferenceAsset {
|
|
id: string;
|
|
assetId: string;
|
|
sortOrder: number;
|
|
originalUrl: string;
|
|
previewUrl?: string | null;
|
|
thumbnailUrl?: string | null;
|
|
mimeType?: string | null;
|
|
displayName?: string | null;
|
|
}
|
|
|
|
export interface AgentPresetSlot {
|
|
id?: string;
|
|
slotIndex: number;
|
|
title?: string | null;
|
|
promptTemplate: string;
|
|
defaultParams?: Record<string, any> | null;
|
|
requireUpload?: boolean;
|
|
uploadLabel?: string | null;
|
|
referenceAssets?: AgentReferenceAsset[];
|
|
referenceAssetIds?: string[];
|
|
}
|
|
|
|
export interface AgentModelSummary {
|
|
id: string;
|
|
modelId?: string | null;
|
|
displayName?: string | null;
|
|
avatarUrl?: string | null;
|
|
}
|
|
|
|
export interface AgentOwnerSummary {
|
|
id: string;
|
|
name?: string | null;
|
|
email?: string | null;
|
|
}
|
|
|
|
export interface AgentPreset {
|
|
id: string;
|
|
ownerUserId: string;
|
|
name: string;
|
|
type: AgentPresetType;
|
|
secondaryType?: string | null;
|
|
visibility: AgentPresetVisibility;
|
|
categoryId?: string | null;
|
|
categoryPath?: AgentCategoryPath | null;
|
|
promptTemplate: string;
|
|
description?: string | null;
|
|
defaultModelId?: string | null;
|
|
defaultParams?: Record<string, any> | null;
|
|
slotCount: number;
|
|
requiredUploadCount: number;
|
|
avatarAssetId?: string | null;
|
|
avatarUrl?: string | null;
|
|
coverAssetId?: string | null;
|
|
status: AgentPresetStatus;
|
|
sortOrder: number;
|
|
usageCount: number;
|
|
lastUsedAt?: string | Date | null;
|
|
forkedFromPresetId?: string | null;
|
|
createdAt: string | Date;
|
|
updatedAt: string | Date;
|
|
owner?: AgentOwnerSummary | null;
|
|
category?: AgentCategory | null;
|
|
defaultModel?: AgentModelSummary | null;
|
|
slots?: AgentPresetSlot[];
|
|
referenceAssets?: AgentReferenceAsset[];
|
|
referenceAssetIds?: string[];
|
|
referenceAssetCount?: number;
|
|
}
|
|
|
|
export interface AgentPresetListResponse {
|
|
categories: AgentCategory[];
|
|
public: AgentPreset[];
|
|
private: AgentPreset[];
|
|
}
|
|
|
|
export interface AgentExecutionSnapshot {
|
|
id: string;
|
|
presetId: string;
|
|
projectId?: string | null;
|
|
chatId?: string | null;
|
|
messageId?: string | null;
|
|
userId: string;
|
|
presetName: string;
|
|
presetType: AgentPresetType;
|
|
visibility: AgentPresetVisibility;
|
|
categoryId?: string | null;
|
|
categoryName?: string | null;
|
|
promptTemplate: string;
|
|
defaultModelId?: string | null;
|
|
resolvedModelId?: string | null;
|
|
defaultParams?: Record<string, any> | null;
|
|
slotCount: number;
|
|
requiredUploadCount: number;
|
|
slots: Array<{
|
|
slotIndex: number;
|
|
title?: string | null;
|
|
promptTemplate: string;
|
|
defaultParams?: Record<string, any> | null;
|
|
requireUpload?: boolean;
|
|
uploadLabel?: string | null;
|
|
referenceAssetIds: string[];
|
|
referenceImageUrls: string[];
|
|
}>;
|
|
referenceAssetIds: string[];
|
|
referenceImageUrls: string[];
|
|
userInputText?: string | null;
|
|
requestPayload?: Record<string, any> | null;
|
|
createdAt: string | Date;
|
|
defaultModel?: AgentModelSummary | null;
|
|
resolvedModel?: AgentModelSummary | null;
|
|
}
|
|
|
|
export interface AgentCreatePayload {
|
|
name: string;
|
|
type: AgentPresetType;
|
|
secondaryType?: string | null;
|
|
visibility: AgentPresetVisibility;
|
|
categoryPath?: AgentCategoryPath | null;
|
|
description?: string;
|
|
defaultModelId: string;
|
|
defaultParams?: Record<string, any>;
|
|
avatarAssetId?: string;
|
|
slots: AgentPresetSlot[];
|
|
}
|
|
|
|
export interface AgentUpdatePayload {
|
|
name?: string;
|
|
type?: AgentPresetType;
|
|
secondaryType?: string | null;
|
|
visibility?: AgentPresetVisibility;
|
|
categoryPath?: AgentCategoryPath | null;
|
|
description?: string | null;
|
|
defaultModelId?: string;
|
|
defaultParams?: Record<string, any> | null;
|
|
avatarAssetId?: string | null;
|
|
slots?: AgentPresetSlot[];
|
|
status?: AgentPresetStatus;
|
|
}
|
|
|
|
export interface AgentCategoryCreatePayload {
|
|
name: string;
|
|
scope?: "public" | "private";
|
|
}
|