interface IMarketplace { initialize(): Promise<void>; search(options?): Promise<MarketplaceSearchResult>; getItem(itemId): Promise<undefined | MarketplaceItem>; getItems(itemIds): Promise<MarketplaceItem[]>; getFeatured(type?,
limit?): Promise<MarketplaceItem[]>; getTrending(type?,
period?,
limit?): Promise<MarketplaceItem[]>; getRecent(type?,
limit?): Promise<MarketplaceItem[]>; getByPublisher(publisherId,
options?): Promise<MarketplaceSearchResult>; getReviews(itemId,
options?): Promise<{ reviews: Review[]; total: number; }>; getVersions(itemId): Promise<{ version: string; releasedAt: string; changelog?: string; }[]>; getDependencyTree(itemId): Promise<{ item: MarketplaceItem; dependencies: MarketplaceItem[]; }>; install(itemId,
options?): Promise<InstallationResult>; update(installationId,
options?): Promise<InstallationResult>; uninstall(installationId): Promise<{ success: boolean; error?: string; }>; getInstalled(options?): Promise<InstalledItem[]>; getInstallation(installationId): Promise<undefined | InstalledItem>; checkUpdates(): Promise<{ installation: InstalledItem; latestVersion: string; currentVersion: string; }[]>; publish(item): Promise<MarketplaceItem>; updateItem(itemId,
updates): Promise<MarketplaceItem>; publishVersion(itemId,
version,
options?): Promise<void>; deprecate(itemId,
reason,
alternativeId?): Promise<void>; submitReview(itemId,
review): Promise<Review>; updateReview(reviewId,
updates): Promise<Review>; deleteReview(reviewId): Promise<void>; markReviewHelpful(reviewId): Promise<void>; respondToReview(reviewId,
response): Promise<void>; getStats(): Promise<MarketplaceStats>; recordView(itemId): Promise<void>; getItemAnalytics(itemId,
period?): Promise<{ views: { date: string; count: number; }[]; downloads: { date: string; count: number; }[]; activeInstalls: number; uninstalls: number; ratings: { date: string; rating: number; }[]; }>; } Methods
initialize
- initialize(): Promise<void>
Returns Promise<void>
getTrending
- getTrending(type?, period?, limit?): Promise<MarketplaceItem[]>
Parameters
Optional type: MarketplaceItemTypeOptional period: "day" | "week" | "month"Optional limit: number
getReviews
- getReviews(itemId, options?): Promise<{
reviews: Review[];
total: number;
}> Parameters
- itemId: string
Optional options: {
sortBy?: "rating" | "newest" | "helpful";
limit?: number;
offset?: number;
}Optional sortBy?: "rating" | "newest" | "helpful"
Optional limit?: number
Optional offset?: number
Returns Promise<{
reviews: Review[];
total: number;
}>
getVersions
- getVersions(itemId): Promise<{
version: string;
releasedAt: string;
changelog?: string;
}[]> Returns Promise<{
version: string;
releasedAt: string;
changelog?: string;
}[]>
install
- install(itemId, options?): Promise<InstallationResult>
Parameters
- itemId: string
Optional options: {
version?: string;
config?: Record<string, unknown>;
autoUpdate?: boolean;
}Optional version?: string
Optional config?: Record<string, unknown>
Optional autoUpdate?: boolean
update
- update(installationId, options?): Promise<InstallationResult>
Parameters
- installationId: string
Optional options: {
version?: string;
config?: Record<string, unknown>;
}Optional version?: string
Optional config?: Record<string, unknown>
uninstall
- uninstall(installationId): Promise<{
success: boolean;
error?: string;
}> Returns Promise<{
success: boolean;
error?: string;
}>
checkUpdates
- checkUpdates(): Promise<{
installation: InstalledItem;
latestVersion: string;
currentVersion: string;
}[]> Returns Promise<{
installation: InstalledItem;
latestVersion: string;
currentVersion: string;
}[]>
publishVersion
- publishVersion(itemId, version, options?): Promise<void>
Parameters
- itemId: string
- version: string
Optional options: {
changelog?: string;
breaking?: boolean;
}Optional changelog?: string
Optional breaking?: boolean
Returns Promise<void>
deprecate
- deprecate(itemId, reason, alternativeId?): Promise<void>
Parameters
- itemId: string
- reason: string
Optional alternativeId: string
Returns Promise<void>
submitReview
- submitReview(itemId, review): Promise<Review>
Parameters
- itemId: string
- review: {
rating: number;
title?: string;
body: string;
}rating: number
Optional title?: string
body: string
Returns Promise<Review>
updateReview
- updateReview(reviewId, updates): Promise<Review>
Parameters
- reviewId: string
- updates: {
rating?: number;
title?: string;
body?: string;
}Optional rating?: number
Optional title?: string
Optional body?: string
Returns Promise<Review>
deleteReview
- deleteReview(reviewId): Promise<void>
Returns Promise<void>
markReviewHelpful
- markReviewHelpful(reviewId): Promise<void>
Returns Promise<void>
respondToReview
- respondToReview(reviewId, response): Promise<void>
Parameters
- reviewId: string
- response: string
Returns Promise<void>
recordView
- recordView(itemId): Promise<void>
Returns Promise<void>
getItemAnalytics
- getItemAnalytics(itemId, period?): Promise<{
views: {
date: string;
count: number;
}[];
downloads: {
date: string;
count: number;
}[];
activeInstalls: number;
uninstalls: number;
ratings: {
date: string;
rating: number;
}[];
}> Parameters
- itemId: string
Optional period: "day" | "week" | "month" | "year"
Returns Promise<{
views: {
date: string;
count: number;
}[];
downloads: {
date: string;
count: number;
}[];
activeInstalls: number;
uninstalls: number;
ratings: {
date: string;
rating: number;
}[];
}>
Interface for the Agent Marketplace