import { RegisterRequestDTO, CustomerDTO, PasswordResetDTO, PasswordTokenDTO, TokenResponseDTO } from '@sentecacommerce/sdk';
import { MutationResultPair, QueryResult } from 'react-query';
declare type AuthApiType = {
    isAuthenticated: () => QueryResult<boolean, unknown>;
    useLogin: ({ onSuccess, }: {
        onSuccess?: () => void;
    }) => MutationResultPair<TokenResponseDTO, unknown, {
        email: string;
        password: string;
    }, unknown>;
    useLoginFacebook: (onSuccess?: () => void) => MutationResultPair<TokenResponseDTO, unknown, {
        access_token: string;
    }, unknown>;
    useLoginGoogle: (onSuccess?: () => void) => MutationResultPair<TokenResponseDTO, unknown, {
        access_token: string;
    }, unknown>;
    useLoginApple: (onSuccess?: () => void) => MutationResultPair<TokenResponseDTO, unknown, {
        lastName?: string;
        firstName?: string;
        id_token: string;
    }, unknown>;
    useRegister: ({ onSuccess, }: {
        onSuccess?: () => void;
    }) => MutationResultPair<TokenResponseDTO, unknown, RegisterRequestDTO, unknown>;
    useResetPassword: ({ onSuccess, }: {
        onSuccess?: () => void;
    }) => MutationResultPair<CustomerDTO, unknown, PasswordResetDTO, unknown>;
    useRequestResetPasswordToken: ({ onSuccess, }: {
        onSuccess?: () => void;
    }) => MutationResultPair<void, unknown, PasswordTokenDTO, unknown>;
    useLogout: () => Function;
};
export declare const AuthApiFactory: {
    getInstance: () => AuthApiType;
};
export declare const authApi: AuthApiType;
export {};
