import { defineBundledChannelEntry, loadBundledEntryExportSync, } from "openclaw/plugin-sdk/channel-entry-contract"; import type { OpenClawPluginApi } from "openclaw/plugin-sdk/channel-entry-contract"; function registerSlackPluginHttpRoutes(api: OpenClawPluginApi): void { const register = loadBundledEntryExportSync<(api: OpenClawPluginApi) => void>(import.meta.url, { specifier: "./runtime-api.js", exportName: "registerSlackPluginHttpRoutes", }); register(api); } export default defineBundledChannelEntry({ id: "slack", name: "Slack", description: "Slack channel plugin", importMetaUrl: import.meta.url, plugin: { specifier: "./channel-plugin-api.js", exportName: "slackPlugin", }, secrets: { specifier: "./src/secret-contract.js", exportName: "channelSecrets", }, runtime: { specifier: "./runtime-api.js", exportName: "setSlackRuntime", }, registerFull: registerSlackPluginHttpRoutes, });