import type { DeepPartial } from 'utility-types' import type { context, getOctokit } from '@actions/github' import type Core from '@actions/core' import type IO from '@actions/io' export type Github = ReturnType export type Context = typeof context export type Action = (github: Github, context: Context, core: typeof Core, io: typeof IO) => Promise export interface QuizMetaInfo { title: string author: { name: string email: string github: string } tsconfig?: Record original_issues: number[] recommended_solutions: number[] tags: string[] related?: string[] } export type Difficulty = 'warm' | 'easy' | 'medium' | 'hard' | 'extreme' | 'pending' export interface Quiz { no: number difficulty: Difficulty path: string readme: Record template: string info: Record | undefined> tests?: string solutions?: { code?: string readme?: Record } }