/// /// declare const _default: { register: ({ strapi }: { strapi: import("@strapi/types/dist/core").Strapi; }) => Promise; bootstrap: ({ strapi }: { strapi: import("@strapi/types/dist/core").Strapi; }) => void; destroy: ({ strapi }: { strapi: import("@strapi/types/dist/core").Strapi; }) => void; config: { default: { user: { validateLinkingSignature: boolean; allowChangeLinkingEmail: boolean; }; }; validator(): void; }; controllers: { 'telegram-user': ({ strapi, }: { strapi: import("@strapi/types/dist/core").Strapi; }) => Partial & import("@strapi/types/dist/core/core-api/controller").Generic & import("@strapi/types/dist/core/core-api/controller").Base; 'telegram-group': ({ strapi, }: { strapi: import("@strapi/types/dist/core").Strapi; }) => Partial & import("@strapi/types/dist/core/core-api/controller").Generic & import("@strapi/types/dist/core/core-api/controller").Base; 'telegram-link': ({ strapi, }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { validateInitData: (ctx: import("koa").Context) => Promise; getLinking: (ctx: import("koa").Context) => Promise; setLinking: (ctx: import("koa").Context) => Promise; } & import("@strapi/types/dist/core/core-api/controller").Base; 'telegram-user-activity': ({ strapi, }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { getUserActivity: (ctx: import("koa").Context, next: import("koa").Next) => Promise; } & import("@strapi/types/dist/core/core-api/controller").Base; telegramAction: ({ strapi }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { getButtons: (ctx: any, next: any) => Promise; trigger: (ctx: any, next: any) => Promise; }; }; routes: { 'telegram-user': import("@strapi/types/dist/core/core-api/router").Router; 'telegram-group': import("@strapi/types/dist/core/core-api/router").Router; 'telegram-link': import("@strapi/types/dist/core/core-api/router").Router; 'telegram-user-activity': import("@strapi/types/dist/core/core-api/router").Router; 'user-activity': { type: string; routes: { method: string; path: string; handler: string; }[]; }; deployment: { type: string; routes: { method: string; path: string; handler: string; config: {}; }[]; }; telegramAuth: { type: string; routes: { method: string; path: string; handler: string; }[]; }; }; services: { koniBot: ({ strapi }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { defaultBotName: string; _initBotMap: boolean; _botMap: Record; readonly botMap: Record; getBotHandler(name?: string): import("./bot/koni-bot").KoniBot; getBot(name?: string): import("telegraf").Telegraf>; launch(): Promise; stop(): Promise; }; botBasicAction: ({ strapi }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { telegramUser: import("@strapi/types/dist/core").Service; botTemplate: { cache: Record; renewCache(): Promise; getMessage(key: string, defaultConfig: import("./services/content-type/bot-message-template").TemplateConfig): import("./services/content-type/bot-message-template").TemplateConfig; getHelpMessage(): import("./services/content-type/bot-message-template").TemplateConfig; getAutoAnswerMessage(): import("./services/content-type/bot-message-template").TemplateConfig; getWelcomeMessage(): import("./services/content-type/bot-message-template").TemplateConfig; }; telegramGroup: import("@strapi/types/dist/core").Service; telegramUserActivity: import("@strapi/types/dist/core").Service; replyMessage(ctx: import("telegraf").Context>, config: import("./services/content-type/bot-message-template").TemplateConfig, replacements?: Record): Promise; handleStart(ctx: import("telegraf").Context>): Promise; handleHelp(ctx: import("telegraf").Context>): Promise; handleMessage(ctx: import("telegraf").Context>): Promise; }; koniBotAction: ({ strapi }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { koniBot: { defaultBotName: string; _initBotMap: boolean; _botMap: Record; readonly botMap: Record; getBotHandler(name?: string): import("./bot/koni-bot").KoniBot; getBot(name?: string): import("telegraf").Telegraf>; launch(): Promise; stop(): Promise; }; botTemplate: { cache: Record; renewCache(): Promise; getMessage(key: string, defaultConfig: import("./services/content-type/bot-message-template").TemplateConfig): import("./services/content-type/bot-message-template").TemplateConfig; getHelpMessage(): import("./services/content-type/bot-message-template").TemplateConfig; getAutoAnswerMessage(): import("./services/content-type/bot-message-template").TemplateConfig; getWelcomeMessage(): import("./services/content-type/bot-message-template").TemplateConfig; }; telegramUser: ({ strapi, }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { wallet: import("@strapi/types/dist/core").Service; telegramBot: { koniBot: any; botCache: any; getBotByUsername: any; autoCreateBot: any; _sendMessage: any; sendMessage: any; } & import("@strapi/types/dist/core/core-api/service").Base; isEnableCreateWallet: boolean; upsertUser: (userInfo: import("@telegraf/types").User, botInfo: import("@telegraf/types").User) => Promise; getUserByTelegramId: (telegramId: string | number) => Promise; findUserByTelegramId: (telegramId: string | number) => Promise; } & import("@strapi/types/dist/core/core-api/service").Base; registerBotActions(): Promise; }; telegramAction: ({ strapi }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { telegramBot: import("@strapi/types/dist/core").Service; getButtons(apiID: string): Promise; sendNotification(data: any, actionType: import("./types").DeploymentType): void; trigger(buttonID: string, id: string): Promise<{ executed: boolean; type?: undefined; status?: undefined; message?: undefined; } | { type: string; status: boolean; message: any; executed?: undefined; }>; }; synchronizeAction: ({ strapi }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { telegramUser: import("@strapi/types/dist/core").Service; telegramGroup: import("@strapi/types/dist/core").Service; telegramUserActivity: import("@strapi/types/dist/core").Service; koniBot: import("./bot/koni-bot").KoniBot; registerCrawlerBotActions(): Promise; launchCrawlerBot(): Promise; stopCrawlerBot(): Promise; handleUserSendMessage(ctx: import("telegraf").Context>): Promise; handleMessage(ctx: import("telegraf").Context>): Promise; getTelegramClientUser(): Promise; getTelegramClientBot(): Promise; getUserInfoInGroup(clientBot: import("telegram").TelegramClient, groupUrl: string): Promise>; getMessageWithGroup(clientUser: import("telegram").TelegramClient, clientBot: import("telegram").TelegramClient, groupUrl: string): Promise<(import("@telegraf/types").User & { msgCount: number; joinDate: number; })[]>; synchronizeUserAction(): Promise; synchronizeMessageAction(): Promise<{}>; }; 'telegram-user': ({ strapi, }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { wallet: import("@strapi/types/dist/core").Service; telegramBot: { koniBot: any; botCache: any; getBotByUsername: any; autoCreateBot: any; _sendMessage: any; sendMessage: any; } & import("@strapi/types/dist/core/core-api/service").Base; isEnableCreateWallet: boolean; upsertUser: (userInfo: import("@telegraf/types").User, botInfo: import("@telegraf/types").User) => Promise; getUserByTelegramId: (telegramId: string | number) => Promise; findUserByTelegramId: (telegramId: string | number) => Promise; } & import("@strapi/types/dist/core/core-api/service").Base; 'telegram-group': ({ strapi, }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { wallet: import("@strapi/types/dist/core").Service; upsertGroup: (chat: import("@telegraf/types").Chat.SupergroupChat | import("@telegraf/types").Chat.ChannelChat, botInfo: any) => Promise; getGroupByTelegramId: (telegramId: string | number) => Promise; updateSynchronizationStatus: (documentId: string, status: import("./services/content-type/telegram-group").SynchronizationStatus) => Promise; } & import("@strapi/types/dist/core/core-api/service").Base; 'telegram-bot': ({ strapi, }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { koniBot: { defaultBotName: string; _initBotMap: boolean; _botMap: Record; readonly botMap: Record; getBotHandler(name?: string): import("./bot/koni-bot").KoniBot; getBot(name?: string): import("telegraf").Telegraf>; launch(): Promise; stop(): Promise; }; botCache: {}; getBotByUsername: (username: string) => Promise; autoCreateBot: () => Promise; _sendMessage: ({ telegramUsers, botData, data, actionType }: { telegramUsers: any; botData: any; data: any; actionType: any; }) => Promise; sendMessage: (botID: string, data: any, users?: any[], actionType?: import("./types").DeploymentType) => Promise; } & import("@strapi/types/dist/core/core-api/service").Base; 'telegram-link': ({ strapi, }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { botService: { defaultBotName: string; _initBotMap: boolean; _botMap: Record; readonly botMap: Record; getBotHandler(name?: string): import("./bot/koni-bot").KoniBot; getBot(name?: string): import("telegraf").Telegraf>; launch(): Promise; stop(): Promise; }; telegramUserService: import("@strapi/types/dist/core").Service; secretMap: Record; getSecret: (botName?: string) => Buffer; link: ({ initData, bot, linkInfo }: import("./services/content-type/telegram-link").TelegramLinkParams, withSecretKey?: any) => Promise<{ success: boolean; data: any; }>; getLink: ({ service, bot, telegram_id, id, uid, email, address }: import("./services/content-type/telegram-link").QueryLinkParams) => Promise<{ success: boolean; error: string; data?: undefined; } | { success: boolean; data: any; error?: undefined; }>; validateInitData: (initData: string, botName?: string) => import("./services/content-type/telegram-link").ValidateInitDataResult; } & import("@strapi/types/dist/core/core-api/service").Base; 'bot-message-template': ({ strapi }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { cache: Record; renewCache(): Promise; getMessage(key: string, defaultConfig: import("./services/content-type/bot-message-template").TemplateConfig): import("./services/content-type/bot-message-template").TemplateConfig; getHelpMessage(): import("./services/content-type/bot-message-template").TemplateConfig; getAutoAnswerMessage(): import("./services/content-type/bot-message-template").TemplateConfig; getWelcomeMessage(): import("./services/content-type/bot-message-template").TemplateConfig; }; 'telegram-notification': ({ strapi, }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { koniBot: import("@strapi/types/dist/core").Service; getDataContent: (id: string) => Promise<{ status: boolean; data: any; message: string; }>; } & import("@strapi/types/dist/core/core-api/service").Base; 'telegram-user-activity': ({ strapi, }: { strapi: import("@strapi/types/dist/core").Strapi; }) => { telegramGroup: import("@strapi/types/dist/core").Service; telegramUser: import("@strapi/types/dist/core").Service; getActivity: (groupId: number, telegramId: number) => Promise<{ telegramId: number; groupId: number; messageCount: any; timeSinceJoin: any; }>; getActivitiesByGroup: (groupId: number) => Promise; upsertActivity: (params: import("./services/content-type/telegram-user-activity").TelegramUserActivityParams) => Promise; updateMessageCount: (groupId: number, userId: number) => Promise; updateUserLeftGroup: (groupId: number, telegramIds: number[]) => Promise; updateActivity: (documentId: string, params: Partial) => Promise; } & import("@strapi/types/dist/core/core-api/service").Base; }; contentTypes: { 'telegram-user': { schema: { kind: string; collectionName: string; info: { singularName: string; pluralName: string; displayName: string; description: string; }; options: { draftAndPublish: boolean; }; pluginOptions: {}; attributes: { telegram_id: { type: string; required: boolean; }; telegram_username: { type: string; }; is_premium: { type: string; }; is_bot: { type: string; }; photo_url: { type: string; }; first_name: { type: string; }; last_name: { type: string; }; language_code: { type: string; }; allow_inbox: { type: string; }; evm_wallet: { type: string; relation: string; target: string; required: boolean; }; blocked: { type: string; }; bot_list: { type: string; relation: string; target: string; mappedBy: string; }; }; }; }; 'telegram-group': { schema: { kind: string; collectionName: string; info: { singularName: string; pluralName: string; displayName: string; description: string; }; options: { draftAndPublish: boolean; }; pluginOptions: {}; attributes: { name: { type: string; }; telegram_id: { type: string; required: boolean; }; type: { type: string; enum: string[]; }; group_url: { type: string; }; photo_url: { type: string; }; description: { type: string; }; evm_wallet: { type: string; relation: string; target: string; required: boolean; }; bot_metadata: { type: string; visible: boolean; }; blocked: { type: string; }; synchronization_status: { type: string; enum: string[]; default: string; }; }; }; }; 'telegram-bot': { schema: { kind: string; collectionName: string; info: { singularName: string; pluralName: string; displayName: string; description: string; }; options: { draftAndPublish: boolean; }; pluginOptions: {}; attributes: { name: { type: string; }; username: { type: string; required: boolean; }; token: { type: string; private: boolean; required: boolean; }; metadata: { type: string; }; user_list: { type: string; relation: string; target: string; inversedBy: string; }; }; }; }; 'telegram-link': { schema: { kind: string; collectionName: string; info: { singularName: string; pluralName: string; displayName: string; }; options: { draftAndPublish: boolean; }; pluginOptions: {}; attributes: { telegram_bot: { type: string; relation: string; target: string; }; telegram_user: { type: string; relation: string; target: string; }; service: { type: string; enum: string[]; }; telegram_id: { type: string; }; telegram_bot_username: { type: string; }; link_domain: { type: string; }; link_id: { type: string; }; link_uid: { type: string; }; link_email: { type: string; }; link_address: { type: string; }; link_signature: { type: string; }; use_secret: { type: string; }; link_token: { type: string; }; }; }; }; 'bot-message-template': { schema: { kind: string; collectionName: string; info: { singularName: string; pluralName: string; displayName: string; description: string; }; options: { draftAndPublish: boolean; }; pluginOptions: {}; attributes: { welcome_message: { type: string; }; help_message: { type: string; }; auto_answer_message: { type: string; }; }; }; lifecycles: { afterCreate: ({ params, result }: { params: any; result: any; }) => Promise; afterUpdate: ({ params, result }: { params: any; result: any; }, states: any) => Promise; }; }; 'telegram-notification': { schema: { kind: string; collectionName: string; info: { singularName: string; pluralName: string; displayName: string; description: string; }; options: { draftAndPublish: boolean; }; pluginOptions: {}; attributes: { name: { type: string; }; caption: { type: string; required: boolean; }; photo: { type: string; multiple: boolean; required: boolean; allowedTypes: string[]; }; parse_mode: { type: string; enum: string[]; default: string; required: boolean; }; reply_markup: { type: string; repeatable: boolean; component: string; }; telegram_bot: { type: string; required: boolean; relation: string; target: string; }; }; }; }; 'telegram-user-activity': { schema: { kind: string; collectionName: string; info: { singularName: string; pluralName: string; displayName: string; description: string; }; options: { draftAndPublish: boolean; }; pluginOptions: {}; attributes: { user_id: { type: string; relation: string; target: string; required: boolean; }; group_id: { type: string; relation: string; target: string; required: boolean; }; message_count: { type: string; }; time_since_join: { type: string; }; is_joined: { type: string; default: boolean; }; }; }; }; }; policies: {}; middlewares: { 'bot-login': (config: any, { strapi }: { strapi: import("@strapi/types/dist/core").Strapi; }) => (ctx: import("koa").Context, next: any) => Promise; }; }; export default _default;