import { AuthenticationRole, AuthenticationState, Partner, User } from "../data";
export declare const AUTHORIZED_PARTNER_ID_KEY = "authorizedForPartnerIds";
export declare const AUTHORIZED_ACCESS_TOKEN_KEY = "accessTokenKeyValue";
export declare const AUTHORIZED_PARTNER = "partner";
export declare const AUTHORIZED_USER = "user";
export declare const AUTHENTICATION_STATE = "authenticationState";
export declare function setAuthorizedForPartnerId(partnerId: string): void;
export declare function getMaybeAuthorizedForPartnerId(): any;
/**
 * Where Authorized means is elevated membership and representative of given organisation
 */
export declare function getMaybeAuthorizedForOrganisationId(): string;
/**
 * Where Authenticated means is part of membership
 */
export declare function getMaybeAuthenticatedForOrganisationId(): string;
export declare function isUnauthenticated(): boolean;
export declare function isAuthenticated(): boolean;
export declare function getAuthorizedForPartnerId(): string;
export declare function validateAuthorizedForPartnerId(partnerId: string): asserts partnerId;
export declare function ensurePartnerMatchIfUnapproved(partnerId: string): asserts partnerId;
export declare function getMaybePartner(): Partner | undefined;
export declare function getPartner(): Partner;
export declare function getMaybeUser(): User | undefined;
export declare function getUser(): User;
export declare function setUser(user: User): void;
export declare function getMaybeAccessToken(): string | undefined;
export declare function getAccessToken(): string;
export declare function setAuthenticationState(state: AuthenticationState): void;
export declare function getMaybeAuthenticationState(): AuthenticationState | undefined;
export declare function getAuthenticationState(): AuthenticationState;
export declare function getAuthenticationRoles(): AuthenticationRole[];
export declare function isRole(role: AuthenticationRole): boolean;
export declare function isMember(): boolean;
export declare function isAdmin(): boolean;
export declare function isModerator(): boolean;
export declare function isIndustry(): boolean;
export declare function isAnonymous(): boolean;
export declare function getAuthenticatedContext(): {
    partner: Partner;
    user: User;
    partnerId: string;
    organisationId: string;
    userId: string;
};
