export interface AdspirerConfig { serverUrl: string; testMode: boolean; testUserEmail: string; accessToken: string | undefined; refreshToken: string | undefined; apiKey: string | undefined; tokenExpiresAt: number | undefined; defaultAccountId: string | undefined; oauthClientId: string | undefined; enabledGroups: ToolGroup[]; enabledTools: string[]; requestTimeoutMs: number; } export type ToolGroup = "google_ads" | "meta_ads" | "tiktok_ads" | "linkedin_ads" | "amazon_ads" | "chatgpt_ads" | "manus" | "audit" | "system" | "integrations"; export interface TokenSet { accessToken: string; refreshToken: string; expiresIn: number; expiresAt: number; } export interface AuthUrlParams { authorizeEndpoint: string; clientId: string; codeChallenge: string; redirectUri: string; scope: string; state: string; } export interface ExchangeParams { tokenEndpoint: string; code: string; codeVerifier: string; redirectUri: string; clientId: string; } export interface CallbackServer { port: number; waitForCallback(): Promise<{ code: string; state: string; }>; close(): void; } export interface OAuthProtectedResourceMetadata { resource: string; authorization_servers: string[]; scopes_supported?: string[]; bearer_methods_supported?: string[]; } export interface OAuthAuthorizationServerMetadata { issuer: string; authorization_endpoint: string; token_endpoint: string; registration_endpoint?: string; response_types_supported?: string[]; grant_types_supported?: string[]; code_challenge_methods_supported?: string[]; token_endpoint_auth_methods_supported?: string[]; scopes_supported?: string[]; } export interface OAuthDiscoveredEndpoints { authorizeEndpoint: string; tokenEndpoint: string; registrationEndpoint: string | undefined; } export interface ClientRegistrationRequest { client_name: string; redirect_uris: string[]; grant_types: string[]; response_types: string[]; token_endpoint_auth_method: string; scope: string; } export interface ClientRegistrationResponse { client_id: string; client_secret?: string; client_name?: string; redirect_uris?: string[]; grant_types?: string[]; response_types?: string[]; token_endpoint_auth_method?: string; scope?: string; } export interface JsonRpcRequest { jsonrpc: "2.0"; method: string; params?: Record; id: string; } export interface JsonRpcResponse { jsonrpc: "2.0"; result?: unknown; error?: JsonRpcError; id: string; } export interface JsonRpcError { code: number; message: string; data?: unknown; } export interface ServerToolDefinition { name: string; description: string; inputSchema: Record; } export interface ToolResult { content: Array<{ type: "text"; text: string; }>; details: unknown; } export type ExecuteFn = (toolCallId: string, params: Record) => Promise; export interface HealthCheckResult { status: string; tools: number; platforms: Record; } export interface Logger { info: (msg: string) => void; warn: (msg: string) => void; error: (msg: string, ...args: unknown[]) => void; debug?: (msg: string) => void; } export interface StaticToolDef { name: string; description: string; inputSchema: Record; } //# sourceMappingURL=types.d.ts.map