export interface GithubPluginAsset { id: number; name: string; size: number; digest: string | null; } export interface GithubPluginRelease { repository: string; id: number; tag: string; url: string; name: string; notes: string; publishedAt: string; prerelease: boolean; assets: GithubPluginAsset[]; } export interface PluginSource { version_id: number; repository: string; release_id: number; release_url: string; asset_id: number; asset_name: string; published_at: string; } export interface PluginUpdate { pluginId: number; name: string; source: PluginSource | null; release: GithubPluginRelease | null; status: 'untracked' | 'available' | 'imported' | 'current' | 'ahead' | 'error'; versionId?: number; error?: string; }