{
// Identity
packageName: string, // Unique identifier (e.g., "com.translator.app")
name: string, // Display name
description: string, // App description
version: string, // Semantic version
type: AppType, // 'AGENT' | 'UI' | 'HARDWARE'
// Authentication
hashedApiKey: string, // Hashed API key for authentication
hashedEndpointSecret?: string, // Optional webhook secret
// Store Management
appStoreStatus: AppStoreStatus, // Development/Published status
isPublic: boolean, // Publicly available flag
reviewNotes?: string, // Review process notes
reviewedBy?: string, // Reviewer identifier
reviewedAt?: Date, // Review timestamp
// Organization
organizationId?: ObjectId, // Owning organization
// Configuration
settings?: AppSetting[], // Available settings
permissions?: Permission[], // Required permissions
tools?: ToolSchema[], // AI tool definitions
webhooks?: WebhookConfig, // Webhook endpoints
hardware?: HardwareRequirement[], // Hardware requirements
// Metadata
logo?: string, // App logo URL
smallLogo?: string, // Small logo variant
bannerImage?: string, // Store banner image
screenshots?: string[], // App screenshots
demoVideoUrl?: string, // Demo video
supportUrl?: string, // Support contact
documentationUrl?: string, // Documentation link
websiteUrl?: string, // Marketing website
privacyPolicyUrl?: string, // Privacy policy
termsOfServiceUrl?: string, // Terms of service
// Analytics
installCount?: number, // Total installations
activeUsers?: number, // Active user count
rating?: number, // Average rating
featured?: boolean, // Featured app flag
// Timestamps
createdAt: Date,
updatedAt: Date
}