import { type PluginMetadata } from '../metadata';
import { type RawMetadataShape } from '../types';
import { tokenFactory } from './base.tokens';

export const FrontMcpPluginTokens = {
  type: tokenFactory.type('plugin'),
  id: tokenFactory.meta('id'),
  name: tokenFactory.meta('name'),
  description: tokenFactory.meta('description'),
  providers: tokenFactory.meta('providers'),
  exports: tokenFactory.meta('exports'),
  plugins: tokenFactory.meta('plugins'),
  adapters: tokenFactory.meta('adapters'),
  tools: tokenFactory.meta('tools'),
  resources: tokenFactory.meta('resources'),
  prompts: tokenFactory.meta('prompts'),
  skills: tokenFactory.meta('skills'),
  scope: tokenFactory.meta('scope'),
  contextExtensions: tokenFactory.meta('contextExtensions'),
} as const satisfies RawMetadataShape<PluginMetadata>;
