@asgardeo/javascript
Version:
Framework agnostic JavaScript SDK for Asgardeo.
66 lines (65 loc) • 4.2 kB
TypeScript
/**
* Copyright (c) 2020, WSO2 LLC. (https://www.wso2.com). All Rights Reserved.
*
* WSO2 LLC. licenses this file to you under the Apache License,
* Version 2.0 (the "License"); you may not use this file except
* in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
import { Stores } from './models/store';
import { Storage } from './models/store';
import { AuthClientConfig } from './__legacy__/models';
import { SessionData } from './models/session';
import { TemporaryStore, TemporaryStoreValue } from './models/store';
import { OIDCDiscoveryApiResponse } from './models/oidc-discovery';
type PartialData<T> = Partial<AuthClientConfig<T> | OIDCDiscoveryApiResponse | SessionData | TemporaryStore>;
export declare const ASGARDEO_SESSION_ACTIVE: string;
declare class StorageManager<T> {
protected _id: string;
protected _store: Storage;
constructor(instanceID: string, store: Storage);
protected setDataInBulk(key: string, data: PartialData<T>): Promise<void>;
protected setValue(key: string, attribute: keyof AuthClientConfig<T> | keyof OIDCDiscoveryApiResponse | keyof SessionData | keyof TemporaryStore, value: TemporaryStoreValue): Promise<void>;
protected removeValue(key: string, attribute: keyof AuthClientConfig<T> | keyof OIDCDiscoveryApiResponse | keyof SessionData | keyof TemporaryStore): Promise<void>;
protected _resolveKey(store: Stores | string, userId?: string): string;
protected isLocalStorageAvailable(): boolean;
setConfigData(config: Partial<AuthClientConfig<T>>): Promise<void>;
setOIDCProviderMetaData(oidcProviderMetaData: Partial<OIDCDiscoveryApiResponse>): Promise<void>;
setTemporaryData(temporaryData: Partial<TemporaryStore>, userId?: string): Promise<void>;
setSessionData(sessionData: Partial<SessionData>, userId?: string): Promise<void>;
setCustomData<K>(key: string, customData: Partial<K>, userId?: string): Promise<void>;
getConfigData(userId?: string): Promise<AuthClientConfig<T>>;
loadOpenIDProviderConfiguration(): Promise<OIDCDiscoveryApiResponse>;
getTemporaryData(userId?: string): Promise<TemporaryStore>;
getSessionData(userId?: string): Promise<SessionData>;
getCustomData<K>(key: string, userId?: string): Promise<K>;
setSessionStatus(status: string): void;
getSessionStatus(): string;
removeSessionStatus(): void;
removeConfigData(): Promise<void>;
removeOIDCProviderMetaData(): Promise<void>;
removeTemporaryData(userId?: string): Promise<void>;
removeSessionData(userId?: string): Promise<void>;
getConfigDataParameter(key: keyof AuthClientConfig<T>): Promise<TemporaryStoreValue>;
getOIDCProviderMetaDataParameter(key: keyof OIDCDiscoveryApiResponse): Promise<TemporaryStoreValue>;
getTemporaryDataParameter(key: keyof TemporaryStore, userId?: string): Promise<TemporaryStoreValue>;
getSessionDataParameter(key: keyof SessionData, userId?: string): Promise<TemporaryStoreValue>;
setConfigDataParameter(key: keyof AuthClientConfig<T>, value: TemporaryStoreValue): Promise<void>;
setOIDCProviderMetaDataParameter(key: keyof OIDCDiscoveryApiResponse, value: TemporaryStoreValue): Promise<void>;
setTemporaryDataParameter(key: keyof TemporaryStore, value: TemporaryStoreValue, userId?: string): Promise<void>;
setSessionDataParameter(key: keyof SessionData, value: TemporaryStoreValue, userId?: string): Promise<void>;
removeConfigDataParameter(key: keyof AuthClientConfig<T>): Promise<void>;
removeOIDCProviderMetaDataParameter(key: keyof OIDCDiscoveryApiResponse): Promise<void>;
removeTemporaryDataParameter(key: keyof TemporaryStore, userId?: string): Promise<void>;
removeSessionDataParameter(key: keyof SessionData, userId?: string): Promise<void>;
}
export default StorageManager;