import { Contract, ContractDefinition } from 'autumndb'; import type { IntegrationDefinition } from '../sync'; import type { Action, ActionContract, Map } from '../types'; export declare class Plugin { slug: string; name: string; version: string; requires: PluginIdentity[]; private actions; private contracts; private integrationMap; constructor(options: PluginDefinition); getCards(): Map; getSyncIntegrations(): Map; getActions(): Map; } export interface PluginDefinition { slug: string; name: string; version: string; requires?: PluginIdentity[]; actions?: ActionDefinition[]; contracts?: ContractDefinition[]; integrationMap?: Map; } export interface PluginIdentity { slug: string; version: string; } export interface ActionDefinition extends Action { contract: ActionContractDefinition; } export type ActionContractDefinition = Pick;