@sprucelabs/spruce-cli
Version:
Command line interface for building Spruce skills.
24 lines (23 loc) • 1.02 kB
TypeScript
import { EventContract } from '@sprucelabs/mercury-types';
import { SchemaTemplateItem } from '@sprucelabs/schema';
import { EventContractTemplateItem } from '@sprucelabs/spruce-templates';
export default class EventTemplateItemBuilder {
buildTemplateItems(options: {
contracts: EventContract[];
localNamespace?: string;
eventBuilderFile?: string;
}): {
eventContractTemplateItems: EventContractTemplateItem[];
schemaTemplateItems: SchemaTemplateItem[];
};
buildEventTemplateItemForName(contracts: EventContract[], fullyQualifiedEventName: string): {
responsePayloadSchemaTemplateItem: SchemaTemplateItem | undefined;
emitPayloadSchemaTemplateItem: SchemaTemplateItem | undefined;
};
private buildTemplateItemsForContract;
private buildTemplateItemForEventSignature;
private buildEventSigTemplateItem;
private mapEventSigsToSchemaTemplateItems;
private mapEventSigsToSchemasByNamepace;
private sigToNamespacePascal;
}