@alauda-fe/common
Version:
Alauda frontend team common codes.
48 lines (47 loc) • 2.03 kB
TypeScript
import { HttpClient } from '@angular/common/http';
import { Subject } from 'rxjs';
import { K8sUtilService } from '../../core/services/public-api';
import { KubernetesResource, Project, ServiceMeshGroup } from './../../core/public-api';
import { ClusterDataItem, DataItemBase, NamespaceDataItem, ProjectDataItem } from './types';
import * as i0 from "@angular/core";
export interface User extends KubernetesResource {
spec: {
account: string;
connector_name: string;
connector_type: string;
email: string;
groups: string[];
is_admin: boolean;
last_login_time: string;
username: string;
valid: boolean;
};
}
export declare class ResourceSelectContextService {
private readonly http;
private readonly k8sUtil;
userEmail: string;
reload$$: Subject<void>;
private _cachedServiceMeshes;
private _cachedClusters;
private _cachedProjects;
private _cachedProjectResources;
private _cachedServiceMeshGroupResources;
set cachedServiceMeshes(value: DataItemBase[]);
get cachedServiceMeshes(): DataItemBase[];
set cachedClusters(value: ClusterDataItem[]);
get cachedClusters(): ClusterDataItem[];
get cachedProjects(): ProjectDataItem[];
set cachedProjects(value: ProjectDataItem[]);
set cachedProjectResources(projects: Project[]);
get cachedProjectResources(): Project[];
set cachedServiceMeshGroupResources(meshes: ServiceMeshGroup[]);
get cachedServiceMeshGroupResources(): ServiceMeshGroup[];
private cachedNamespaces;
constructor(http: HttpClient, k8sUtil: K8sUtilService);
storeNamespaces(project: string, cluster: string, namespaces: NamespaceDataItem[]): void;
getCachedNamespaces(project: string, cluster: string): NamespaceDataItem[];
getUser(email: string): import("rxjs").Observable<User>;
static ɵfac: i0.ɵɵFactoryDeclaration<ResourceSelectContextService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<ResourceSelectContextService>;
}