export interface AuthContextUserInterface {
    id?: number | string;
    name?: string;
    aditionalData?: any;
    token?: AuthTokenInterface;
}
export interface AuthTokenInterface {
    accessToken?: string;
    expires?: string;
    tokenType?: string;
    refreshToken?: string;
    aditionalData?: any;
}
export interface AuthContextType {
    user: AuthContextUserInterface | null;
    login: (username: string, password: string) => Promise<void>;
    logout: () => void;
    isAuthenticated: boolean;
    isLoading: boolean;
}
export declare const AuthContext: import("react").Context<AuthContextType>;
interface AuthProviderProps {
    children: React.ReactNode;
    getToken: (username: string, password: string) => Promise<AuthTokenInterface>;
    getUserData: (auth: AuthTokenInterface) => Promise<AuthContextUserInterface>;
    refreshToken?: (auth: AuthTokenInterface) => Promise<AuthTokenInterface>;
    removeToken?: (auth: AuthTokenInterface) => Promise<void>;
    showLog?: boolean;
}
export declare const AuthProvider: React.FC<AuthProviderProps>;
export {};
//# sourceMappingURL=AuthContext.d.ts.map