Files
openclaw/extensions/line/runtime-api.ts
2026-04-27 20:34:35 +01:00

188 lines
4.9 KiB
TypeScript

// Private runtime barrel for the bundled LINE extension.
// Keep this barrel thin and aligned with the local extension surface.
export type {
ChannelAccountSnapshot,
ChannelPlugin,
OpenClawConfig,
OpenClawPluginApi,
PluginRuntime,
} from "openclaw/plugin-sdk/core";
export type {
ChannelGatewayContext,
ChannelStatusIssue,
} from "openclaw/plugin-sdk/channel-contract";
export { clearAccountEntryFields } from "openclaw/plugin-sdk/core";
export { buildChannelConfigSchema } from "openclaw/plugin-sdk/channel-config-schema";
export type { ReplyPayload } from "openclaw/plugin-sdk/reply-runtime";
export type { ChannelSetupDmPolicy, ChannelSetupWizard } from "openclaw/plugin-sdk/setup";
export {
buildComputedAccountStatusSnapshot,
buildTokenChannelStatusSummary,
} from "openclaw/plugin-sdk/status-helpers";
export {
DEFAULT_ACCOUNT_ID,
formatDocsLink,
setSetupChannelEnabled,
splitSetupEntries,
} from "openclaw/plugin-sdk/setup";
export { setLineRuntime } from "./src/runtime.js";
export {
firstDefined,
isSenderAllowed,
normalizeAllowFrom,
normalizeDmAllowFromWithStore,
} from "./src/bot-access.js";
export { downloadLineMedia } from "./src/download.js";
export { probeLineBot } from "./src/probe.js";
export { buildTemplateMessageFromPayload } from "./src/template-messages.js";
export {
createQuickReplyItems,
pushFlexMessage,
pushLocationMessage,
pushMessageLine,
pushMessagesLine,
pushTemplateMessage,
pushTextMessageWithQuickReplies,
sendMessageLine,
} from "./src/send.js";
export { monitorLineProvider } from "./src/monitor.js";
export { hasLineDirectives, parseLineDirectives } from "./src/reply-payload-transform.js";
export {
listLineAccountIds,
normalizeAccountId,
resolveDefaultLineAccountId,
resolveLineAccount,
} from "./src/accounts.js";
export { type NormalizedAllowFrom } from "./src/bot-access.js";
export { resolveLineChannelAccessToken } from "./src/channel-access-token.js";
export {
LineChannelConfigSchema,
LineConfigSchema,
type LineConfigSchemaType,
} from "./src/config-schema.js";
export {
resolveExactLineGroupConfigKey,
resolveLineGroupConfigEntry,
resolveLineGroupLookupIds,
resolveLineGroupsConfig,
} from "./src/group-keys.js";
export {
type CodeBlock,
convertCodeBlockToFlexBubble,
convertLinksToFlexBubble,
convertTableToFlexBubble,
extractCodeBlocks,
extractLinks,
extractMarkdownTables,
hasMarkdownToConvert,
type MarkdownLink,
type MarkdownTable,
type ProcessedLineMessage,
processLineMessage,
stripMarkdown,
} from "./src/markdown-to-line.js";
export {
createAudioMessage,
createFlexMessage,
createImageMessage,
createLocationMessage,
createTextMessageWithQuickReplies,
createVideoMessage,
getUserDisplayName,
getUserProfile,
pushImageMessage,
replyMessageLine,
showLoadingAnimation,
} from "./src/send.js";
export { validateLineSignature } from "./src/signature.js";
export {
type ButtonsTemplate,
type CarouselColumn,
type CarouselTemplate,
type ConfirmTemplate,
createButtonMenu,
createButtonTemplate,
createCarouselColumn,
createConfirmTemplate,
createImageCarousel,
createImageCarouselColumn,
createLinkMenu,
createProductCarousel,
createTemplateCarousel,
createYesNoConfirm,
type ImageCarouselColumn,
type ImageCarouselTemplate,
type TemplateMessage,
} from "./src/template-messages.js";
export type {
LineChannelData,
LineConfig,
LineProbeResult,
ResolvedLineAccount,
} from "./src/types.js";
export { createLineNodeWebhookHandler, readLineWebhookRequestBody } from "./src/webhook-node.js";
export {
createLineWebhookMiddleware,
type LineWebhookOptions,
startLineWebhook,
type StartLineWebhookOptions,
} from "./src/webhook.js";
export { parseLineWebhookBody } from "./src/webhook-utils.js";
export { datetimePickerAction, messageAction, postbackAction, uriAction } from "./src/actions.js";
export type { Action } from "./src/actions.js";
export {
createActionCard,
createAgendaCard,
createAppleTvRemoteCard,
createCarousel,
createDeviceControlCard,
createEventCard,
createImageCard,
createInfoCard,
createListCard,
createMediaPlayerCard,
createNotificationBubble,
createReceiptCard,
toFlexMessage,
} from "./src/flex-templates.js";
export type {
CardAction,
FlexBox,
FlexBubble,
FlexButton,
FlexCarousel,
FlexComponent,
FlexContainer,
FlexImage,
FlexText,
ListItem,
} from "./src/flex-templates.js";
export {
cancelDefaultRichMenu,
createDefaultMenuConfig,
createGridLayout,
createRichMenu,
createRichMenuAlias,
deleteRichMenu,
deleteRichMenuAlias,
getDefaultRichMenuId,
getRichMenu,
getRichMenuIdOfUser,
getRichMenuList,
linkRichMenuToUser,
linkRichMenuToUsers,
setDefaultRichMenu,
unlinkRichMenuFromUser,
unlinkRichMenuFromUsers,
uploadRichMenuImage,
} from "./src/rich-menu.js";
export type {
CreateRichMenuParams,
RichMenuArea,
RichMenuAreaRequest,
RichMenuRequest,
RichMenuResponse,
RichMenuSize,
} from "./src/rich-menu.js";