@baqhub/cli
Version:
The official command line interface for the BAQ federated app platform.
59 lines (58 loc) • 2.38 kB
TypeScript
import { IO } from "@baqhub/sdk";
declare const RProjectRecordTypeScope: IO.UnionC<[IO.LiteralC<"read">, IO.LiteralC<"write">, IO.LiteralC<"subscribe">]>;
declare const RLocalProjectRecordType: IO.Type<{
readonly path: string;
readonly recordId: string;
readonly versionHash: string | undefined;
readonly contentHash: string | undefined;
}, any, any>;
declare const RProjectRecordType: IO.IntersectionC<[IO.UnionC<[IO.Type<{
readonly path: string;
readonly recordId: string;
readonly versionHash: string | undefined;
readonly contentHash: string | undefined;
}, any, any>, IO.Type<{
readonly entity: string;
readonly recordId: string;
readonly versionHash: string;
}, any, any>]>, IO.Type<{
readonly scopes?: readonly ("read" | "write" | "subscribe")[] | undefined;
}, any, any>]>;
export type ProjectRecordTypeScope = IO.TypeOf<typeof RProjectRecordTypeScope>;
export type LocalProjectRecordType = IO.TypeOf<typeof RLocalProjectRecordType>;
export type ProjectRecordType = IO.TypeOf<typeof RProjectRecordType>;
export declare enum ProjectType {
JS = "js",
JS_REACT = "js-react",
TS = "ts",
TS_REACT = "ts-react"
}
declare const RProjectRaw: IO.IntersectionC<[IO.Type<{
readonly name: string;
readonly type: ProjectType;
readonly path: string;
readonly recordTypes: {
[x: string]: ({
readonly path: string;
readonly recordId: string;
readonly versionHash: string | undefined;
readonly contentHash: string | undefined;
} | {
readonly entity: string;
readonly recordId: string;
readonly versionHash: string;
}) & {
readonly scopes?: readonly ("read" | "write" | "subscribe")[] | undefined;
};
};
}, any, any>, IO.Type<{
readonly description?: string | undefined;
readonly websiteUrl?: string | undefined;
}, any, any>]>;
export interface Project extends IO.TypeOf<typeof RProjectRaw> {
}
export declare const RProject: IO.Type<Project, any, unknown>;
export declare function buildProject(name: string, type: ProjectType, path: string): Project;
export declare function addTypeToProject(project: Project, name: string, projectRecordType: ProjectRecordType): Project;
export declare function removeTypeFromProject(project: Project, name: string): Project;
export {};