1
This commit is contained in:
@@ -2,6 +2,8 @@
|
||||
* 抓大鹅 Match3D 创作 Agent 共享契约。
|
||||
* 字段按 HTTP facade 的 camelCase DTO 命名,后端领域层 snake_case 字段由 facade 映射。
|
||||
*/
|
||||
import type { Match3DGeneratedItemAsset } from './match3dWorks';
|
||||
|
||||
export type Match3DCreationStage =
|
||||
| 'collecting'
|
||||
| 'collecting_config'
|
||||
@@ -29,6 +31,9 @@ export interface CreateMatch3DAgentSessionRequest {
|
||||
referenceImageSrc?: string | null;
|
||||
clearCount?: number;
|
||||
difficulty?: number;
|
||||
assetStyleId?: string | null;
|
||||
assetStyleLabel?: string | null;
|
||||
assetStylePrompt?: string | null;
|
||||
}
|
||||
|
||||
export type CreateMatch3DSessionRequest = CreateMatch3DAgentSessionRequest;
|
||||
@@ -72,6 +77,9 @@ export interface Match3DCreatorConfig {
|
||||
referenceImageSrc?: string | null;
|
||||
clearCount: number;
|
||||
difficulty: number;
|
||||
assetStyleId?: string | null;
|
||||
assetStyleLabel?: string | null;
|
||||
assetStylePrompt?: string | null;
|
||||
}
|
||||
|
||||
export interface Match3DResultDraft {
|
||||
@@ -88,6 +96,7 @@ export interface Match3DResultDraft {
|
||||
totalItemCount?: number;
|
||||
publishReady?: boolean;
|
||||
blockers?: string[];
|
||||
generatedItemAssets?: Match3DGeneratedItemAsset[];
|
||||
}
|
||||
|
||||
export interface Match3DAgentMessage {
|
||||
|
||||
@@ -4,6 +4,28 @@
|
||||
*/
|
||||
export type Match3DWorkPublicationStatus = 'draft' | 'published' | string;
|
||||
|
||||
export type Match3DGeneratedItemAssetStatus =
|
||||
| 'pending'
|
||||
| 'image_ready'
|
||||
| 'model_generating'
|
||||
| 'model_ready'
|
||||
| 'failed'
|
||||
| string;
|
||||
|
||||
export interface Match3DGeneratedItemAsset {
|
||||
itemId: string;
|
||||
itemName: string;
|
||||
imageSrc?: string | null;
|
||||
imageObjectKey?: string | null;
|
||||
modelSrc?: string | null;
|
||||
modelObjectKey?: string | null;
|
||||
modelFileName?: string | null;
|
||||
taskUuid?: string | null;
|
||||
subscriptionKey?: string | null;
|
||||
status: Match3DGeneratedItemAssetStatus;
|
||||
error?: string | null;
|
||||
}
|
||||
|
||||
export interface PutMatch3DWorkRequest {
|
||||
gameName: string;
|
||||
themeText?: string;
|
||||
@@ -33,6 +55,7 @@ export interface Match3DWorkSummary {
|
||||
updatedAt: string;
|
||||
publishedAt?: string | null;
|
||||
publishReady: boolean;
|
||||
generatedItemAssets?: Match3DGeneratedItemAsset[];
|
||||
}
|
||||
|
||||
export interface Match3DWorkProfile extends Match3DWorkSummary {}
|
||||
|
||||
@@ -69,6 +69,7 @@ export type PuzzleAgentActionRequest =
|
||||
promptText?: string | null;
|
||||
referenceImageSrc?: string | null;
|
||||
imageModel?: string | null;
|
||||
aiRedraw?: boolean;
|
||||
candidateCount?: number;
|
||||
workTitle?: string;
|
||||
workDescription?: string;
|
||||
|
||||
@@ -24,6 +24,7 @@ export interface PuzzleLeaderboardEntry {
|
||||
rank: number;
|
||||
nickname: string;
|
||||
elapsedMs: number;
|
||||
visibleTags?: string[];
|
||||
isCurrentPlayer?: boolean;
|
||||
}
|
||||
|
||||
|
||||
@@ -352,12 +352,19 @@ export type AdminDisableProfileRedeemCodeRequest = {
|
||||
export type AdminUpsertProfileInviteCodeRequest = {
|
||||
inviteCode: string;
|
||||
metadata?: Record<string, unknown> | null;
|
||||
grantedUserTags?: string[];
|
||||
startsAt?: string | null;
|
||||
expiresAt?: string | null;
|
||||
};
|
||||
|
||||
export type ProfileInviteCodeAdminResponse = {
|
||||
userId: string;
|
||||
inviteCode: string;
|
||||
metadata: Record<string, unknown>;
|
||||
grantedUserTags: string[];
|
||||
startsAt?: string | null;
|
||||
expiresAt?: string | null;
|
||||
status: 'pending' | 'active' | 'expired';
|
||||
createdAt: string;
|
||||
updatedAt: string;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user