UNPKG

@sprucelabs/spruce-cli

Version:

Command line interface for building Spruce skills.

59 lines (58 loc) 3.1 kB
import { Schema, FieldRegistration } from '@sprucelabs/schema'; import SpruceError from '../../../errors/SpruceError'; import AbstractStore from '../../../stores/AbstractStore'; import { InternalUpdateHandler } from '../../../types/cli.types'; export declare const coreSchemas: { personSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.PersonSchema; skillSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.SkillSchema; skillCreatorSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.SkillCreatorSchema; locationSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.LocationSchema; organizationSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.OrganizationSchema; personOrganizationSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.PersonOrganizationSchema; personLocationSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.PersonLocationSchema; roleSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.RoleSchema; messageSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.MessageSchema; messageSourceSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.MessageSourceSchema; messageTargetSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.MessageTargetSchema; sendMessageSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.SendMessageSchema; choiceSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.ChoiceSchema; linkSchema: import("@sprucelabs/spruce-core-schemas").SpruceSchemas.Spruce.v2020_07_22.LinkSchema; }; export type SchemasByNamespace = Record<string, Schema[]>; interface FetchSchemasResults { schemasByNamespace: SchemasByNamespace; errors: SpruceError[]; } export interface FetchedField { path?: string; registration: FieldRegistration; isLocal: boolean; } interface FetchFieldsResults { errors: SpruceError[]; fields: FetchedField[]; } export default class SchemaStore extends AbstractStore { readonly name = "schema"; fetchSchemas(options: { localSchemaLookupDir?: string; shouldFetchRemoteSchemas?: boolean; shouldEnableVersioning?: boolean; localNamespace: string; shouldFetchCoreSchemas?: boolean; moduleToImportFromWhenRemote?: string; shouldFetchLocalSchemas?: boolean; didUpdateHandler?: InternalUpdateHandler; }): Promise<FetchSchemasResults>; private emitDidFetchSchemasAndMixinResults; private mixinSchemaOrThrowIfExists; hasLocalSchemas(): Promise<boolean>; private loadLocalSchemas; private globbyLocalBuilders; private resolveLocalVersion; private prepareLocalSchema; fetchFields(options?: { localAddonsDir?: string; }): Promise<FetchFieldsResults>; } export {};