import type { HonoRequest } from 'hono'; import type { ISSOProvider, ISessionProvider, IUserProvider, User, Session, SSOCallbackResult, SSOLoginConfig } from '../auth/index.js'; import { MastraAuthProvider } from './auth.js'; export declare class CompositeAuth extends MastraAuthProvider implements ISSOProvider, ISessionProvider, IUserProvider { private providers; private authenticatedProviderByObject; private authenticatedProviderByPrimitive; constructor(providers: MastraAuthProvider[]); private findProvider; private rememberAuthenticatedProvider; private takeAuthenticatedProvider; private mapAuthenticatedUserToResourceId; /** * True if any provider is MastraCloudAuth (exempt from license requirement). */ get isMastraCloudAuth(): boolean; /** * True if any provider is SimpleAuth (exempt from license requirement). */ get isSimpleAuth(): boolean; authenticateToken(token: string, request: HonoRequest): Promise; authorizeUser(user: unknown, request: HonoRequest): Promise; /** * Forward cookie header to SSO provider for PKCE validation. * Called by auth handler before handleCallback(). */ setCallbackCookieHeader(cookieHeader: string | null): void; getLoginUrl(redirectUri: string, state: string): string; getLoginCookies(redirectUri: string, state: string): string[] | undefined; handleCallback(code: string, state: string): Promise>; getLoginButtonConfig(): SSOLoginConfig; getLogoutUrl(redirectUri: string, request?: Request): Promise; createSession(userId: string, metadata?: Record): Promise; validateSession(sessionId: string): Promise; destroySession(sessionId: string): Promise; refreshSession(sessionId: string): Promise; getSessionIdFromRequest(request: Request): string | null; getSessionHeaders(session: Session): Record; getClearSessionHeaders(): Record; getCurrentUser(request: Request): Promise; getUser(userId: string): Promise; } //# sourceMappingURL=composite-auth.d.ts.map