LogoCyanPrint
TemplatesReferenceSDK Reference

Type Definitions

SDK type definitions and enums

Type Definitions

Complete type definitions for the CyanPrint SDK.

Enums

GlobType

File processing types.

Prop

Type

Usage:

cyan.config.ts
import { GlobType } from '@atomicloud/cyan-sdk';
files: [
{ root: 'templates', glob: '**/*.md', exclude: [], type: GlobType.Template },
{ root: 'templates', glob: '**/*.png', exclude: [], type: GlobType.Copy }
]

QuestionType

Question type identifiers.

Prop

Type

Usage:

cyan.config.ts
import { QuestionType } from '@atomicloud/cyan-sdk';
const name = await i.text({
type: QuestionType.Text,
id: 'project.name',
message: 'Project name?',
desc: 'Enter project name'
});

Interfaces

Cyan

Main configuration object returned by templates.

Prop

Type


CyanProcessor

Processor definition.

Prop

Type


CyanGlob

File group for processing.

Prop

Type


CyanPlugin

Plugin definition.

Prop

Type


IInquirer

Question asking interface.

interface IInquirer {
// Shorthand forms
text(q: string, id: string, help?: string | null): Promise<string>;
select(q: string, options: string[], id: string, help?: string | null): Promise<string>;
confirm(q: string, id: string, help?: string | null): Promise<boolean>;
checkbox(q: string, options: string[], id: string, help?: string | null): Promise<string[]>;
password(q: string, id: string, help?: string | null): Promise<string>;
dateSelect(q: string, id: string, help?: string | null): Promise<string>;
// Object forms
text(config: TextQ): Promise<string>;
select(config: SelectQ): Promise<string>;
confirm(config: ConfirmQ): Promise<boolean>;
checkbox(config: CheckboxQ): Promise<string[]>;
password(config: PasswordQ): Promise<string>;
dateSelect(config: DateQ): Promise<string>;
}

IDeterminism

Deterministic Generation

The IDeterminism interface ensures reproducible output across template runs. Use it when you need consistent values based on a key (e.g., generating default names).

interface IDeterminism {
get(key: string, origin: () => string): string;
}

Question Interfaces

TextQ

Prop

Type

SelectQ

Prop

Type

ConfirmQ

Prop

Type

CheckboxQ

Prop

Type

PasswordQ

Prop

Type

DateQ

Prop

Type