export interface SetupSDKParams {
    baseUrl: string;
}
export interface AuthenticateClientParams {
    clientId: string;
    clientSecret: string;
    grantType: string;
}
export interface AuthenticateClientResponse {
    access_token: string;
    refresh_token: string;
    token_type: string;
    expires_in: string;
}
export interface AuthenticateUserParams {
    userId: string;
}
export interface TokenInfo {
    access_token: string;
    refresh_token: string;
    token_type: string;
    expires_in: string;
}
export interface AuthenticateUserResponse {
    auth_type: string;
    token_info: TokenInfo;
}
export interface VerifyOTPParams {
    otpSms: string;
    otpMail: string;
}
export interface VerifyOTPResponse extends TokenInfo {
}
export interface RenewAccessTokenParams {
    /**
     * only for iOs
     */
    refresh_token?: string;
}
export interface RenewAccessTokenResponse extends TokenInfo {
}
export interface RegisterDeviceParams {
    /**
     * only for Android OS
     */
    biometricApiType: 'FACE_ID' | 'FINGER_PRINT' | 'DEVICE_CREDENTIAL' | 'AUTO';
    /**
     * only for iOs
     */
    localizedReason: string;
}
export interface RegisterDeviceResponse {
    alias: string;
    certificate: string;
}
export interface ListRegisteredDevicesParams {
}
export interface DeviceInfo {
    device_id: string;
    device_name: string;
    secure_element: boolean;
    biometric: boolean;
}
export type ListRegisteredDevicesResponse = Array<DeviceInfo>;
export interface DeleteDeviceParams {
    deviceId: string;
}
export interface GetPendingAuthorisationRequestParams {
}
export interface GetPendingAuthorisationRequestResponse {
    transaction_id: string;
    request: string;
    hash_algorithm: string;
}
export interface AuthorisationPendingRequestParams {
    /**
     * only for Android OS
     */
    biometricApiType: 'FACE_ID' | 'FINGER_PRINT' | 'DEVICE_CREDENTIAL' | 'AUTO';
    /**
     * only for iOs
     */
    localizedReason: string;
    transactionID: string;
    request: string;
    hashAlgorithm: string;
}
export interface CancelPendingRequestParams {
    transactionID: string;
    request: string;
    hashAlgorithm: string;
}
export interface GetUserProfileParams {
}
export interface GetUserProfileResponse {
    user_id: string;
    user_name: string;
    app_name: string;
    user_email: string;
    user_mobile: string;
}
export interface GetDeviceRegistrationSettingsParams {
}
export interface GetDeviceRegistrationSettingsResponse {
    device_key_type: string;
    device_key_size: number;
    secure_element_required: boolean;
    biometric_required: boolean;
    allowed_devices: string;
    clock_tolerance_on_auth_cert: string;
}
export declare enum QRFormat {
    PNG = "png",
    JPG = "jpg",
    BMP = "bmp",
    JPEG = "jpeg",
    WBMP = "wbmp",
    GIF = "gif",
    NONE = "NONE"
}
export interface GenerateQRCodeParams {
    /**
     * only for iOs
     */
    clientId: string;
    /**
     * only for Android OS
     */
    format: QRFormat;
    /**
     * only for Android OS
     */
    size: string;
}
export interface GenerateQRCodeResponse {
    size: string;
    qr_code: string;
    format: string;
}
export interface VerifyQRCodeParams {
    qrCode: string;
}
export interface VerifyQRCodeResponse extends TokenInfo {
}
export interface RegisterDeviceForPushNotificationParams {
    deviceToken: string;
}
export interface DeleteDeviceForPushNotificationParams {
    deviceToken: string;
}
export interface CustomError {
    code?: string;
    message: string;
}
export type BaseResponse = {
    result: string;
};
export interface AuthorisationDataTypes {
    AuthorisationData?: {
        OriginatorID: string;
        UserID: string;
        CertificateID: string;
        TransactionID: string;
        Salt: string;
        MetaData: {
            DeviceID: string;
        };
        NumSignatures: string;
        Documents: {
            Document: Array<DocumentTypes>;
        };
        ValidityPeriod: {
            ValidFrom: string;
            ValidTo: string;
        };
        Signature: {
            DigestMethod: string;
        };
    };
}
export interface DocumentTypes {
    $: {
        id: string;
    };
    Name: string;
    DigestValue: string;
}
//# sourceMappingURL=types.d.ts.map