import { ComputedRef } from 'vue'; import { OAuth2CallbackParams, OAuth2Error, OAuth2Session, OAuth2UserInfo, OAuthClient } from '../../core'; export interface UseStrandsAccountReturn { client: OAuthClient; session: ComputedRef; user: ComputedRef; isAuthenticated: ComputedRef; isLoading: ComputedRef; error: ComputedRef; startAuth: (returnTo?: string) => Promise; handleCallback: (params: OAuth2CallbackParams) => Promise; refreshTokens: () => Promise; fetchUserInfo: () => Promise; signOut: (revokeTokens?: boolean) => Promise; getAuthHeaders: () => Record; } export declare function useStrandsAccount(): UseStrandsAccountReturn; export declare function bindClient(client: OAuthClient): UseStrandsAccountReturn;