/**
 * This file has been generated
 * DO NOT EDIT, IT MAY BE OVERWRITTEN
 */
import { Client, Response, ApiConfig } from "../import-adapter";
import { AbstractService, ServiceCallType } from '../abstract-service';
import { ScramLoginParams } from '../../all-models';
import { ScramLoginResponseBody } from '../../all-models';
export declare class ScramService extends AbstractService {
    constructor(client: Client, apiConfig: ApiConfig);
    resources: {
        [key: string]: ServiceCallType;
    };
    /**
    * Get scram hash it
    * Scram conf iteration counter (i) to be read by client before starting scram login process
    * LWM2M path: /1024//42
    * @return void api call
    */
    getScramHashIt(): Promise<Response<void>>;
    /**
    * Get scram user iteration
    * SCRAM Hash Iteration: Nombre d&#39;itérations utilisé en SCRAM pour le dernier hashage. Nombre &gt;1000, généré aléatoirement à l&#39;écriture de la conf dans l&#39;IoTize.
    * LWM2M path: /1025/{groupId}/7

    * @tapVersion(">=1.0")
    *
    * @param groupId input
    * @return number api call
    */
    getScramUserIteration(groupId: number): Promise<Response<number>>;
    /**
    * Get scram user salt
    * User-specific salt utilisé (avec le User Name) pour saller les hashs du password StoredKey et ServerKey. Ecrit par Exec/SetPWD
    * LWM2M path: /1025/{groupId}/16

    * @tapVersion(">=1.0")
    *
    * @param groupId input
    * @return number api call
    */
    getScramUserSalt(groupId: number): Promise<Response<number>>;
    /**
    * Start scram communication
    * Demande d&#39;une clé aléatoire et initiation d&#39;une session CCOM cryptée utilisant ce RNG comme clé de cryptage. Accessible uniquement en NFC.
    * LWM2M path: /1024//47
    * @return Uint8Array api call
    */
    initialize(): Promise<Response<Uint8Array>>;
    /**
    * First command to initiate scram login, for client to send login and nonce to IoTize, and IoTize to return user salt, user iteration counter (j) and combined nonce
    * First command to initiate scram login, for client to send login and nonce to IoTize, and IoTize to return user salt, user iteration counter (j) and combined nonce
    * LWM2M path: /1024//40
    * Body converter id: "ScramLoginParams"

    * @tapVersion(">=1.0")
    *
    * @param params input
    * @return ScramLoginResponseBody api call
    */
    login(params: ScramLoginParams): Promise<Response<ScramLoginResponseBody>>;
    /**
    * Scram login proof
    * Second command to finalize scram login, for client to send ClientProof and combined nonce
    * LWM2M path: /1024//41
    * Body converter id: "Bytes"

    * @tapVersion(">=1.0")
    *
    * @param params input
    * @return Uint8Array api call
    */
    loginProof(params: Uint8Array): Promise<Response<Uint8Array>>;
    /**
    * Write scram user iteration
    *
    * LWM2M path: /1025/{groupId}/7
    * Body converter id: "integer_uint32"

    * @tapVersion(">=1.0")
    *
    * @param groupId input

    * @tapVersion(">=1.0")
    *
    * @param value input
    * @return void api call
    */
    putScramUserIteration(groupId: number, value: number): Promise<Response<void>>;
    /**
    * Write scram user salt
    *
    * LWM2M path: /1025/{groupId}/16
    * Body converter id: "integer_uint32"

    * @tapVersion(">=1.0")
    *
    * @param groupId input

    * @tapVersion(">=1.0")
    *
    * @param value input
    * @return void api call
    */
    putScramUserSalt(groupId: number, value: number): Promise<Response<void>>;
    /**
    * Communication channel
    * Crypted communication ressource, for sending/receiving commands/responses after the SCRAM or CCOM session is established.
    * LWM2M path: /1024//48
    * Body converter id: "Bytes"

    * @tapVersion(">=1.11")
    *
    * @param data input
    * @return Uint8Array api call
    */
    send(data: Uint8Array): Promise<Response<Uint8Array>>;
}
