export type AuthenticationState = { currentUser?: User; isLoggedIn: boolean; }; export type Subscriber = (state: AuthenticationState) => void; export type AuthenticationService = { login(user: User): void; logout(): void; subscribe(subscriber: Subscriber): void; unsubscribe(subscriber: Subscriber): void; getState: () => AuthenticationState; }; export declare function makeAuthenticationService(): AuthenticationService; export declare function getDefaultState(): AuthenticationState;