import { AuthsignalConstructor, GetActionRequest, GetActionResponse, GetChallengeRequest, GetChallengeResponse, DeleteAuthenticatorRequest, EnrollVerifiedAuthenticatorRequest, EnrollVerifiedAuthenticatorResponse, TrackRequest, TrackResponse, UpdateActionRequest, UpdateUserRequest, UserAuthenticator, GetUserRequest, GetUserResponse, ValidateChallengeRequest, ValidateChallengeResponse, UserAttributes, DeleteUserRequest, GetAuthenticatorsRequest, ActionAttributes } from "./types";
import { Webhook } from "./webhook";
export declare const DEFAULT_API_URL = "https://api.authsignal.com/v1";
export declare class Authsignal {
    apiSecretKey: string;
    apiUrl: string;
    webhook: Webhook;
    constructor({ apiSecretKey, apiUrl, retries }: AuthsignalConstructor);
    getUser(request: GetUserRequest): Promise<GetUserResponse>;
    updateUser(request: UpdateUserRequest): Promise<UserAttributes>;
    deleteUser(request: DeleteUserRequest): Promise<void>;
    getAuthenticators(request: GetAuthenticatorsRequest): Promise<UserAuthenticator[]>;
    enrollVerifiedAuthenticator(request: EnrollVerifiedAuthenticatorRequest): Promise<EnrollVerifiedAuthenticatorResponse>;
    deleteAuthenticator(request: DeleteAuthenticatorRequest): Promise<void>;
    track(request: TrackRequest): Promise<TrackResponse>;
    validateChallenge(request: ValidateChallengeRequest): Promise<ValidateChallengeResponse>;
    getAction(request: GetActionRequest): Promise<GetActionResponse>;
    updateAction(request: UpdateActionRequest): Promise<ActionAttributes>;
    getChallenge(request: GetChallengeRequest): Promise<GetChallengeResponse>;
    private getRequestConfig;
}
