/** * Linear tools exposed to the coding agent. * * Wired into the agent through the SDK's async `extraTools` provider: on each * tool-set resolution we map the session's factory project to its owning org * and only expose the Linear tools when that org has a Linear connection. * Projects whose org never connected Linear (or when the * feature is disabled) see no Linear tools at all — the model is never shown * tools it can't use. * * Tenancy mirrors the Linear API routes: everything is scoped by the org that * owns the project, and tokens are refreshed through the integration's shared * connection lifecycle. */ import type { RequestContext } from '@mastra/core/request-context'; import type { LinearIntegration } from './integration.js'; declare function createLinearGetIssueTool(linear: LinearIntegration, orgId: string): import("@mastra/core/tools").Tool<{ issue: string; }, unknown, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext, "linear_get_issue", unknown>; declare function createLinearCommentTool(linear: LinearIntegration, orgId: string): import("@mastra/core/tools").Tool<{ issue: string; body: string; }, unknown, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext, "linear_create_comment", unknown>; /** * Async `extraTools` provider: expose Linear tools only when the session's * project belongs to an org with an active Linear connection. */ export declare function buildLinearAgentTools({ requestContext, linear, }: { requestContext: RequestContext; /** The integration instance providing the Linear API client. */ linear: LinearIntegration; }): Promise | ReturnType>>; export {}; //# sourceMappingURL=agent-tools.d.ts.map