@alauda-fe/common
Version:
Alauda frontend team common codes.
29 lines (28 loc) • 1.27 kB
TypeScript
import { ActivatedRoute, ActivatedRouteSnapshot, ParamMap, Params } from '@angular/router';
import { WorkspaceParams } from '../types/public-api';
export type Workspace = Readonly<{
project: string;
cluster: string;
namespace: string;
}>;
export interface ResourceIdentifier extends Workspace {
name: string;
}
export declare function parseWorkspace(workspace: string): Workspace;
export declare function stringifyWorkspace(workspace: WorkspaceParams, strict?: boolean): string;
export declare function isValidWorkspace(obj: any): obj is Workspace;
export declare function parseRID(rid: string): ResourceIdentifier;
export declare function stringifyRID(rid: ResourceIdentifier): string;
export declare function stringifyRID(workspace: Workspace, name: string): string;
export declare function isValidRID(obj: any): obj is ResourceIdentifier;
export declare function extractWorkspace(params: Params | ParamMap): Readonly<{
project: string;
cluster: string;
namespace: string;
}>;
export declare function extractWorkspaceFromRoute(route: ActivatedRoute | ActivatedRouteSnapshot): Readonly<{
project: string;
cluster: string;
namespace: string;
}>;
export declare const workspaceToPath: (workspace: Partial<Workspace>) => string;