import { createCampaignTools } from "./campaigns.ts"; import type { MetaClient } from "./common.ts"; import { createFacebookTools } from "./facebook.ts"; import { createInstagramTools } from "./instagram.ts"; import { createThreadsTools } from "./threads.ts"; export type { MetaClient } from "./common.ts"; type InstagramTools = ReturnType; type FacebookTools = ReturnType; type ThreadsTools = ReturnType; type CampaignTools = ReturnType; type ToolGroup = "instagram" | "facebook" | "threads" | "campaigns"; type ToolGroupMap = { instagram: InstagramTools; facebook: FacebookTools; threads: ThreadsTools; campaigns: CampaignTools; }; type MergeTools = T extends [] ? InstagramTools & FacebookTools & ThreadsTools & CampaignTools : T[number] extends infer G ? G extends ToolGroup ? ToolGroupMap[G] : never : never; type UnionToIntersection = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never; export interface CreateMetaToolsOptions { api: MetaClient; igAccountId?: string; pageId?: string; pageAccessToken?: string; threadsUserId?: string; threadsAccessToken?: string; adAccountId?: string; include?: T; } export declare function createMetaTools(opts: CreateMetaToolsOptions): UnionToIntersection>; export { createCampaignTools } from "./campaigns.ts"; export { createFacebookTools } from "./facebook.ts"; export type { ToolCategory } from "./filter.ts"; export { filterTools, filterToolsByName, getAvailableCategories, getToolCategories, limitTools, } from "./filter.ts"; export { createInstagramTools } from "./instagram.ts"; export type { ToolCallContext, ToolMiddleware } from "./middleware.ts"; export { withMiddleware } from "./middleware.ts"; export type { RouterOptions } from "./router.ts"; export { createRouter } from "./router.ts"; export { createThreadsTools } from "./threads.ts"; //# sourceMappingURL=index.d.ts.map