@vidavidorra/create-project
Version:
Interactively create a GitHub project
53 lines (52 loc) • 1.93 kB
TypeScript
import { z } from 'zod';
import { type Options } from '../options.js';
import { File } from './file.js';
declare const schema: z.ZodObject<{
name: z.ZodLiteral<"CI/CD">;
on: z.ZodObject<{
push: z.ZodObject<{
branches: z.ZodTuple<[z.ZodLiteral<"main">, z.ZodLiteral<"beta">, z.ZodLiteral<"renovate/**">], null>;
}, z.core.$strip>;
pull_request: z.ZodNull;
}, z.core.$strip>;
permissions: z.ZodObject<{
contents: z.ZodLiteral<"write">;
'id-token': z.ZodLiteral<"write">;
issues: z.ZodLiteral<"write">;
'pull-requests': z.ZodLiteral<"write">;
}, z.core.$strict>;
jobs: z.ZodObject<{
'lint-commit-messages': z.ZodObject<{
uses: z.ZodString;
}, z.core.$strip>;
lint: z.ZodObject<{
uses: z.ZodString;
}, z.core.$strip>;
build: z.ZodObject<{
uses: z.ZodString;
}, z.core.$strip>;
test: z.ZodObject<{
uses: z.ZodString;
}, z.core.$strip>;
'code-coverage': z.ZodObject<{
uses: z.ZodString;
needs: z.ZodTuple<[z.ZodLiteral<"lint">, z.ZodLiteral<"build">, z.ZodLiteral<"test">], null>;
}, z.core.$strip>;
release: z.ZodObject<{
uses: z.ZodString;
needs: z.ZodArray<z.ZodUnion<readonly [z.ZodLiteral<"lint-commit-messages">, z.ZodLiteral<"lint">, z.ZodLiteral<"build">, z.ZodLiteral<"test">, z.ZodLiteral<"code-coverage">]>>;
secrets: z.ZodObject<{
privateKey: z.ZodString;
}, z.core.$strict>;
}, z.core.$strip>;
}, z.core.$strict>;
}, z.core.$strict>;
type Yaml = z.infer<typeof schema>;
declare class CiCd extends File {
protected readonly _yaml: Yaml;
constructor(path: string, options: Options);
process(): this;
protected get sha(): string;
protected get version(): string;
}
export { CiCd };