import { RpcObservableExtensionDataClient } from '@microsoft/windows-admin-center-sdk/core/rpc/extension-data/rpc-observable-extension-data-client';
import { RpcObservableExtensionDataResult } from '@microsoft/windows-admin-center-sdk/core/rpc/extension-data/rpc-observable-extension-data-model';
import { Observable } from 'rxjs';
import { AjaxRequest } from 'rxjs/ajax';
import { RpcService } from './rpc.service';
import * as i0 from "@angular/core";
export declare class SecureExtensionDataService extends RpcObservableExtensionDataClient {
    /**
     * Initializes a new instance of the SecureExtensionDataService class.
     *
     * @param rpc the rpc object.
     */
    constructor(rpc: RpcService);
    /**
     * Creates and stores a secure extension data token for the session
     * @param key the key you want to store token in
     * @param data the data to be encrypted and securely stored for the session
     */
    createSecureExtensionToken(key: string, data: string): Observable<RpcObservableExtensionDataResult>;
    /**
     * Adds a secure extension data token to a request
     * @param key the key the secure data is stored in
     * @param request the plugin request (optional)
     */
    addSecureExtensionDataHeader(key: string, request?: AjaxRequest): Observable<AjaxRequest>;
    static ɵfac: i0.ɵɵFactoryDeclaration<SecureExtensionDataService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<SecureExtensionDataService>;
}
