Initial commit
This commit is contained in:
39
src/types.ts
Normal file
39
src/types.ts
Normal file
@@ -0,0 +1,39 @@
|
||||
/**
|
||||
* Plugin metadata as returned by the marketplace / plugin directory.
|
||||
*/
|
||||
export interface PluginMetadata {
|
||||
id: string;
|
||||
name: string;
|
||||
version: string;
|
||||
description: string;
|
||||
author: string;
|
||||
repository: string;
|
||||
thumbnail: string;
|
||||
downloadUrl: string;
|
||||
homepage: string;
|
||||
tags: string[];
|
||||
addedDate: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Plugin directory index response from the marketplace.
|
||||
*/
|
||||
export interface PluginIndex {
|
||||
version: string;
|
||||
updatedAt: string;
|
||||
plugins: string[];
|
||||
}
|
||||
|
||||
/**
|
||||
* An installed plugin — extends metadata with runtime state.
|
||||
*/
|
||||
export interface InstalledPlugin extends PluginMetadata {
|
||||
installedDate: string;
|
||||
enabled: boolean;
|
||||
}
|
||||
|
||||
/** Tab identifiers for the plugin manager UI. */
|
||||
export enum PluginTab {
|
||||
Marketplace = 'marketplace',
|
||||
Installed = 'installed',
|
||||
}
|
||||
Reference in New Issue
Block a user