| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755 |
- import * as _cz_git_inquirer from '@cz-git/inquirer';
- export * from '@cz-git/inquirer';
- export * from '@cz-git/loader';
- declare const generateQuestions: (options: CommitizenGitOptions, cz: any) => false | ({
- type: string;
- name: string;
- message: string | undefined;
- themeColorCode: string | undefined;
- source: (_: unknown, input: string) => _cz_git_inquirer.FilterArrayItemType[];
- separator?: undefined;
- validate?: undefined;
- when?: undefined;
- completeValue?: undefined;
- transformer?: undefined;
- filter?: undefined;
- default?: undefined;
- } | {
- type: string;
- name: string;
- message: string | string[] | undefined;
- themeColorCode: string | undefined;
- separator: string | undefined;
- source: (answer: Answers, input: string) => _cz_git_inquirer.FilterArrayItemType[];
- validate: (input: string | Array<string>) => string | true;
- when: (answer: Answers) => boolean;
- completeValue?: undefined;
- transformer?: undefined;
- filter?: undefined;
- default?: undefined;
- } | {
- type: string;
- name: string;
- message: string | undefined;
- completeValue: string | undefined;
- validate: (input: string | Array<string>) => string | true;
- when: (answers: Answers) => boolean;
- transformer: (input: string) => string;
- themeColorCode?: undefined;
- source?: undefined;
- separator?: undefined;
- filter?: undefined;
- default?: undefined;
- } | {
- type: string;
- name: string;
- message: string | undefined;
- validate: (subject: string, answers: Answers) => string | boolean;
- transformer: (subject: string, answers: Answers) => string;
- filter: (subject: string) => string;
- completeValue: string | undefined;
- themeColorCode?: undefined;
- source?: undefined;
- separator?: undefined;
- when?: undefined;
- default?: undefined;
- } | {
- type: string;
- name: string;
- message: string | undefined;
- completeValue: string | undefined;
- transformer: (input: string) => string;
- themeColorCode?: undefined;
- source?: undefined;
- separator?: undefined;
- validate?: undefined;
- when?: undefined;
- filter?: undefined;
- default?: undefined;
- } | {
- type: string;
- name: string;
- message: string | boolean | undefined;
- default: boolean;
- when: () => boolean;
- themeColorCode?: undefined;
- source?: undefined;
- separator?: undefined;
- validate?: undefined;
- completeValue?: undefined;
- transformer?: undefined;
- filter?: undefined;
- } | {
- type: string;
- name: string;
- message: string | undefined;
- completeValue: string | undefined;
- when: (answers: Answers) => string | boolean;
- transformer: (input: string) => string;
- themeColorCode?: undefined;
- source?: undefined;
- separator?: undefined;
- validate?: undefined;
- filter?: undefined;
- default?: undefined;
- } | {
- type: string;
- name: string;
- message: string | undefined;
- themeColorCode: string | undefined;
- source: (_: Answers, input: string) => _cz_git_inquirer.FilterArrayItemType[];
- when: () => boolean;
- separator?: undefined;
- validate?: undefined;
- completeValue?: undefined;
- transformer?: undefined;
- filter?: undefined;
- default?: undefined;
- })[];
- type GenerateQuestionsType = typeof generateQuestions;
- type QuestionsType = ReturnType<GenerateQuestionsType>;
- /**
- * @description: fork by "@commitlint/types" v16.2.1
- */
- /** ========== rules ========== */
- /**
- * Rules match the input either as successful or failed.
- * For example, when `header-full-stop` detects a full stop and is set as "always"; it's true.
- * If the `header-full-stop` discovers a full stop but is set to "never"; it's false.
- */
- type RuleOutcome = Readonly<[boolean, string?]>;
- /**
- * Rules receive a parsed commit, condition, and possible additional settings through value.
- * All rules should provide the most sensible rule condition and value.
- */
- type RuleType = 'async' | 'sync' | 'either';
- type BaseRule<Value = never, Type extends RuleType = 'either'> = (parsed: Commit, when?: RuleConfigCondition, value?: Value) => Type extends 'either' ? RuleOutcome | Promise<RuleOutcome> : Type extends 'async' ? Promise<RuleOutcome> : Type extends 'sync' ? RuleOutcome : never;
- type Rule<Value = never> = BaseRule<Value, 'either'>;
- type AsyncRule<Value = never> = BaseRule<Value, 'async'>;
- type SyncRule<Value = never> = BaseRule<Value, 'sync'>;
- /**
- * Rules always have a severity.
- * Severity indicates what to do if the rule is found to be broken
- * 0 - Disable this rule
- * 1 - Warn for violations
- * 2 - Error for violations
- */
- declare enum RuleConfigSeverity {
- Disabled = 0,
- Warning = 1,
- Error = 2
- }
- /**
- * Rules always have a condition.
- * It can be either "always" (as tested), or "never" (as tested).
- * For example, `header-full-stop` can be enforced as "always" or "never".
- */
- type RuleConfigCondition = 'always' | 'never';
- type RuleConfigTuple<T> = T extends void ? Readonly<[RuleConfigSeverity.Disabled]> | Readonly<[RuleConfigSeverity, RuleConfigCondition]> : Readonly<[RuleConfigSeverity.Disabled]> | Readonly<[RuleConfigSeverity, RuleConfigCondition, T]>;
- declare enum RuleConfigQuality {
- User = 0,
- Qualified = 1
- }
- type QualifiedRuleConfig<T> = (() => RuleConfigTuple<T>) | (() => Promise<RuleConfigTuple<T>>) | RuleConfigTuple<T>;
- type RuleConfig<V = RuleConfigQuality.Qualified, T = void> = V extends RuleConfigQuality.Qualified ? RuleConfigTuple<T> : QualifiedRuleConfig<T>;
- type CaseRuleConfig<V = RuleConfigQuality.User> = RuleConfig<V, TargetCaseType | TargetCaseType[]>;
- type LengthRuleConfig<V = RuleConfigQuality.User> = RuleConfig<V, number>;
- type EnumRuleConfig<V = RuleConfigQuality.User> = RuleConfig<V, string[]>;
- interface RulesConfig<V = RuleConfigQuality.User> {
- 'body-case': CaseRuleConfig<V>;
- 'body-empty': RuleConfig<V>;
- 'body-full-stop': RuleConfig<V, string>;
- 'body-leading-blank': RuleConfig<V>;
- 'body-max-length': LengthRuleConfig<V>;
- 'body-max-line-length': LengthRuleConfig<V>;
- 'body-min-length': LengthRuleConfig<V>;
- 'footer-empty': RuleConfig<V>;
- 'footer-leading-blank': RuleConfig<V>;
- 'footer-max-length': LengthRuleConfig<V>;
- 'footer-max-line-length': LengthRuleConfig<V>;
- 'footer-min-length': LengthRuleConfig<V>;
- 'header-case': CaseRuleConfig<V>;
- 'header-full-stop': RuleConfig<V, string>;
- 'header-max-length': LengthRuleConfig<V>;
- 'header-min-length': LengthRuleConfig<V>;
- 'references-empty': RuleConfig<V>;
- 'scope-case': CaseRuleConfig<V>;
- 'scope-empty': RuleConfig<V>;
- 'scope-enum': EnumRuleConfig<V>;
- 'scope-max-length': LengthRuleConfig<V>;
- 'scope-min-length': LengthRuleConfig<V>;
- 'signed-off-by': RuleConfig<V, string>;
- 'subject-case': CaseRuleConfig<V>;
- 'subject-empty': RuleConfig<V>;
- 'subject-full-stop': RuleConfig<V, string>;
- 'subject-max-length': LengthRuleConfig<V>;
- 'subject-min-length': LengthRuleConfig<V>;
- 'trailer-exists': RuleConfig<V, string>;
- 'type-case': CaseRuleConfig<V>;
- 'type-empty': RuleConfig<V>;
- 'type-enum': EnumRuleConfig<V>;
- 'type-max-length': LengthRuleConfig<V>;
- 'type-min-length': LengthRuleConfig<V>;
- [key: string]: AnyRuleConfig<V>;
- }
- type AnyRuleConfig<V> = RuleConfig<V, unknown> | RuleConfig<V, void>;
- /** ========== load ========== */
- type PluginRecords = Record<string, Plugin>;
- interface Plugin {
- rules: {
- [ruleName: string]: Rule | AsyncRule | SyncRule;
- };
- }
- interface LoadOptions {
- cwd?: string;
- file?: string;
- }
- interface CommitlintUserConfig {
- extends?: string | string[];
- formatter?: string;
- rules?: Partial<RulesConfig>;
- parserPreset?: string | ParserPreset | Promise<ParserPreset>;
- ignores?: ((commit: string) => boolean)[];
- defaultIgnores?: boolean;
- plugins?: (string | Plugin)[];
- helpUrl?: string;
- [key: string]: unknown;
- }
- type QualifiedRules = Partial<RulesConfig<RuleConfigQuality.Qualified>>;
- interface QualifiedConfig {
- extends: string[];
- formatter: string;
- rules: QualifiedRules;
- parserPreset?: ParserPreset;
- ignores?: ((commit: string) => boolean)[];
- defaultIgnores?: boolean;
- plugins: PluginRecords;
- helpUrl: string;
- }
- interface ParserPreset {
- name?: string;
- path?: string;
- parserOpts?: unknown;
- }
- /** ========== parse ========== */
- interface Commit {
- raw: string;
- header: string;
- type: string | null;
- scope: string | null;
- subject: string | null;
- body: string | null;
- footer: string | null;
- mentions: string[];
- notes: CommitNote[];
- references: CommitReference[];
- revert: any;
- merge: any;
- }
- interface CommitNote {
- title: string;
- text: string;
- }
- interface CommitReference {
- raw: string;
- prefix: string;
- action: string | null;
- owner: string | null;
- repository: string | null;
- issue: string | null;
- }
- /** ========== ensure ========== */
- type TargetCaseType = 'camel-case' | 'kebab-case' | 'snake-case' | 'pascal-case' | 'start-case' | 'upper-case' | 'uppercase' | 'sentence-case' | 'sentencecase' | 'lower-case' | 'lowercase' | 'lowerCase';
- /**
- * @description: cz-git types
- * @author: @Zhengqbbb (zhengqbbb@gmail.com)
- * @license: MIT
- * @copyright: Copyright (c) 2022-present Qiubin Zheng
- */
- interface UserConfig extends CommitlintUserConfig {
- prompt?: CommitizenGitOptions;
- }
- type Config = Omit<Partial<typeof defaultConfig>, 'scopes'> & {
- scopes: ScopesType;
- disableScopeLowerCase?: boolean;
- disableSubjectLowerCase?: boolean;
- maxHeaderLength?: number;
- maxSubjectLength?: number;
- minSubjectLength?: number;
- defaultScope?: string;
- defaultSubject?: string;
- defaultBody?: string;
- defaultFooterPrefix?: string;
- defaultIssues?: string;
- };
- interface Answers {
- /**
- * @default "Select the type of change that you're committing:"
- */
- type?: string;
- /**
- * @default 'Denote the SCOPE of this change (optional):'
- */
- scope?: string | string[];
- /**
- * @default 'Denote the SCOPE of this change:'
- */
- customScope?: string;
- /**
- * @default 'Write a SHORT, IMPERATIVE tense description of the change:\n'
- */
- subject?: string;
- /**
- * @default 'a LONGER description of the change (optional). Use "|" to break new line:\n'
- */
- body?: string;
- /**
- * @default 'Is any BREAKING CHANGE (add "!" in header) (optional) ?'
- * @use need turn on options "markBreakingChangeMode"
- */
- markBreaking?: string | boolean;
- /**
- * @default 'List any BREAKING CHANGES (optional). Use "|" to break new line:\n'
- */
- breaking?: string;
- /** @deprecated Please use `footerPrefixesSelect` field instead. @note fix typo option field v1.4.0: Already processed for normal compatibility */
- footerPrefixsSelect?: string;
- /**
- * @default 'Select the ISSUES type of change (optional):'
- */
- footerPrefixesSelect?: string;
- /** @deprecated Please use `customFooterPrefix` field instead. @note fix typo option field v1.4.0: Already processed for normal compatibility */
- customFooterPrefixs?: string;
- /**
- * @default 'Input ISSUES prefix:'
- */
- customFooterPrefix?: string;
- /**
- * @default 'List any ISSUES AFFECTED by this change. E.g.: #31, #34:'
- */
- footer?: string;
- /**
- * @default 'Are you sure you want to proceed with the commit above?'
- */
- confirmCommit?: string;
- /**
- * @default 'Generating your AI commit subject...'
- */
- generatingByAI: string;
- /**
- * @default 'Select suitable subject by AI generated:'
- */
- generatedSelectByAI: string;
- footerPrefix?: string;
- }
- type ScopesType = string[] | Array<{
- name: string;
- value?: string;
- }>;
- interface CommitizenType {
- registerPrompt: (type: string, plugin: unknown) => void;
- prompt: (qs: QuestionsType) => Promise<Answers>;
- }
- interface Option {
- /**
- * @description: show prompt name
- */
- name: string;
- /**
- * @description: output real value
- */
- value: string;
- }
- interface TypesOption extends Option {
- /**
- * @description: Submit emoji commit string
- * @see: https://gitmoji.dev/
- * @example: ":bug:" => 🐛
- */
- emoji?: string;
- }
- /**
- * provide subdivides each message part
- */
- interface CommitMessageOptions {
- /**
- * @description: choose type list value
- * @example: 'feat'
- */
- type: string;
- /**
- * @description: choose or custom scope value
- * @example: 'app'
- */
- scope: string;
- /**
- * @description: choose type list emoji code. need turn on `useEmoji` options
- * @example: ':sparkles:'
- */
- emoji: string;
- /**
- * @description: express is a breaking change message
- * @example `!`
- */
- markBreaking: string;
- /**
- * @description: input subject
- */
- subject: string;
- /**
- * @description: base Angular format default header
- * @example `feat(app): add a feature`
- */
- defaultHeader: string;
- body: string;
- breaking: string;
- footer: string;
- /**
- * @description: base Angular format default all message
- */
- defaultMessage: string;
- }
- interface GenerateAIPromptType {
- type?: string;
- defaultScope?: string;
- maxSubjectLength?: number;
- upperCaseSubject?: boolean;
- diff?: string;
- }
- interface CommitizenGitOptions {
- /**
- * @description: define commonly used commit message alias
- * @default { fd: "docs: fix typos" }
- * @use commitizen CLI: "cz_alias=fd cz"
- * @use czg CLI: "czg --alias=fd" | "czg :fd"
- * @note use commitizen CLI will meet process not exit. cz-git can't resolve it.
- */
- alias?: Record<string, string>;
- /**
- * @description: Customize prompt questions
- */
- messages?: Answers;
- /**
- * @description: the prompt inquirer primary color
- * @rule `38;5;${color_code}`
- * @tip the color_code can get by https://github.com/sindresorhus/xterm-colors
- * @example "38;5;043"
- * @default '' //cyan color
- */
- themeColorCode?: string;
- /**
- * @description: Customize prompt type
- */
- types?: TypesOption[];
- /**
- * @description: Add extra types to default types
- * @use Use when you don't want to add bloated defaults and don't want to adjust the default order in configuration
- * @example `typesAppend: [ { value: "workflow", name: "workflow: Workflow changes"} ],`
- * @default []
- */
- typesAppend?: TypesOption[];
- /**
- * @description: default types list fuzzy search types `value` key of list.
- * if choose `false` will search `name` key of list
- * @use Using emoji unicode as `value` and that can't be searched
- * @default true
- */
- typesSearchValue?: boolean;
- /** @deprecated Please use `typesSearchValue` field instead. */
- typesSearchValueKey?: boolean;
- /**
- * @description: Use OpenAI to auto generate short description for commit message
- * @default false
- */
- useAI?: boolean;
- /**
- * @description: If >1 will turn on select mode, select generate options like returned by OpenAI
- * @default 1
- */
- aiNumber?: number;
- /**
- * @description: To ignore selection codes when sending AI API requests
- * @default [ "package-lock.json", "yarn.lock", "pnpm-lock.yaml" ]
- * @example: [ "pnpm-lock.yaml", "docs/public" ]
- */
- aiDiffIgnore?: string[];
- /**
- * Choose the AI model you want to use: gpt-3.5-turbo | text-davinci-003
- * gpt-3.5-turbo: Lower price consumption (10x) and faster
- * text-davinci-003: Get more reliable information
- *
- * @default openAI-Turbo
- */
- aiType?: 'openAI-Turbo' | 'openAI-Davinci';
- /**
- * @description: Alert!!! Save on "$HOME/.czrc" or "$HOME/.config/.czrc". Do not save on project
- */
- openAIToken?: string;
- /**
- * It is recommended to use the command to configure the local
- * `npx czg --api-proxy=<http_proxy>`
- * e.g: `npx czg --api-proxy="http://127.0.0.1:1080"` or `npx czg --api-proxy="socks5://127.0.0.1:1080"`
- */
- apiProxy?: string;
- /**
- * @description: Use the callback fn can customize edit information AI question information
- * @param GenerateAIPromptType: provide some known parameters
- * @default generateSubjectDefaultPrompt
- */
- aiQuestionCB?: (aiParam: GenerateAIPromptType) => string;
- /**
- * @description: Use emoji ?| it will be use typesOption.emoji code
- * @default false
- */
- useEmoji?: boolean;
- /**
- * @description: Set the location of emoji in header
- * @default "center"
- */
- emojiAlign?: 'left' | 'center' | 'right';
- /**
- * @description: Provides a select of prompt to select module scopes
- * @note it auto import value from rule "scope-enum" with `@commitlint`
- * @use want to add scopes description or when you not use commitlint
- */
- scopes?: ScopesType;
- /**
- * @description: default scope list fuzzy search types `name` key of list.
- * if choose `true` will search `value` key of list.
- * @use If have long description of scope. can use it to enhanced search.
- * @default false
- */
- scopesSearchValue?: boolean;
- /**
- * @description: Provides an overriding select of prompt to select module scopes under specific type
- * @note use this option should set `scopes` option to realize distinguish
- * @example: [test] => provide select e2eTest unitTest
- */
- scopeOverrides?: {
- [type: string]: ScopesType;
- };
- /**
- * @description: Filter select of prompt to select module scopes by the scope.value
- * @default ['.DS_Store']
- */
- scopeFilters?: string[];
- /**
- * @description: Whether to enable scope multiple mode
- * @default false
- */
- enableMultipleScopes?: boolean;
- /**
- * @description: Multiple choice scope separator
- * @default ","
- */
- scopeEnumSeparator?: string;
- /**
- * @description: Whether to show "custom" when selecting scopes
- * @note it auto check rule "scope-enum" set the option with `@commitlint`
- * @use when you not use commitlint
- * @default true
- */
- allowCustomScopes?: boolean;
- /**
- * @description: Whether to show "empty" when selecting scopes
- * @default true
- */
- allowEmptyScopes?: boolean;
- /**
- * @description: Set the location of empty option (empty) and custom option (custom) in selection range
- * @default "bottom"
- */
- customScopesAlign?: 'top' | 'bottom' | 'top-bottom' | 'bottom-top';
- /**
- * @default "custom"
- */
- customScopesAlias?: string;
- /**
- * @default "empty"
- */
- emptyScopesAlias?: string;
- /**
- * @description: Subject is need upper case first.
- * @default false
- */
- upperCaseSubject?: boolean;
- /**
- * @description: Whether to add extra prompt BREAKCHANGE ask. to add an extra "!" to the header
- * @see: https://cz-git.qbb.sh/recipes/breakingchange
- * @default false
- */
- markBreakingChangeMode?: boolean;
- /**
- * @description: Allow breaking changes in the included types output box
- * @default ['feat', 'fix']
- */
- allowBreakingChanges?: string[];
- /**
- * @description: set body and BREAKING CHANGE max length to break-line
- * @default 100
- * @note it auto check rule "body-max-line-length" set the option with `@commitlint`.
- * @use when you not use commitlint
- */
- breaklineNumber?: number;
- /**
- * @description: body and BREAKINGCHANGES new line char
- * @default "|"
- */
- breaklineChar?: string;
- /**
- * @deprecated Please use `issuePrefixes` field instead.
- * @note fix typo option field v1.3.4: Already processed for normal compatibility
- */
- issuePrefixs?: Option[];
- /**
- * @description: Provides a select issue prefix box in footer
- * @default issuePrefixes: [{ value: "closed", name: "ISSUES has been processed" }]
- */
- issuePrefixes?: Option[];
- /**
- * @deprecated Please use `customIssuePrefixAlign` field instead.
- * @note fix typo option field v1.3.4: Already processed for normal compatibility
- */
- customIssuePrefixsAlign?: 'top' | 'bottom' | 'top-bottom' | 'bottom-top';
- /**
- * @default "top"
- */
- customIssuePrefixAlign?: 'top' | 'bottom' | 'top-bottom' | 'bottom-top';
- /**
- * @deprecated Please use `emptyIssuePrefixAlias` field instead.
- * @note fix typo option field v1.3.4: Already processed for normal compatibility
- */
- emptyIssuePrefixsAlias?: string;
- /**
- * @default "skip"
- */
- emptyIssuePrefixAlias?: string;
- /**
- * @deprecated Please use `customIssuePrefixAlias` field instead.
- * @note fix typo option field v1.3.4: Already processed for normal compatibility
- */
- customIssuePrefixsAlias?: string;
- /**
- * @default "custom"
- */
- customIssuePrefixAlias?: string;
- /**
- * @deprecated Please use `allowCustomIssuePrefix` field instead.
- * @note fix typo option field v1.3.4: Already processed for normal compatibility
- */
- allowCustomIssuePrefixs?: boolean;
- /**
- * @description: Whether to show "custom" selecting issue prefixes
- * @default true
- */
- allowCustomIssuePrefix?: boolean;
- /**
- * @deprecated Please use `allowEmptyIssuePrefix` field instead.
- * @note fix typo option field v1.3.4: Already processed for normal compatibility
- */
- allowEmptyIssuePrefixs?: boolean;
- /**
- * @description: Whether to show "skip(empty)" when selecting issue prefixes
- * @default true
- */
- allowEmptyIssuePrefix?: boolean;
- /**
- * @description: Prompt final determination whether to display the color
- * @default true
- */
- confirmColorize?: boolean;
- /**
- * @description: List of questions you want to skip
- * @default []
- * @example: ['body']
- */
- skipQuestions?: Array<'scope' | 'body' | 'breaking' | 'footerPrefix' | 'footer' | 'confirmCommit'>;
- /**
- * @description: Force set max header length | Equivalent setting maxSubjectLength.
- * @note it auto check rule "header-max-length" set the option with `@commitlint`.
- * @use when you not use commitlint
- */
- maxHeaderLength?: number;
- /**
- * @description: Force set max subject length.
- * @note it auto check rule "subject-max-length" set the option with `@commitlint`.
- * @use when you not use commitlint
- */
- maxSubjectLength?: number;
- /**
- * @description: Is not strict subject rule. Just provide prompt word length warning.
- * Effected maxHeader and maxSubject commitlint
- * @example [1, 'always', 80] 1: mean warning. will be true
- * @default false
- */
- isIgnoreCheckMaxSubjectLength?: boolean;
- /**
- * @description: Force set header width.
- * @note it auto check rule "subject-min-length" set the option with `@commitlint`.
- * @use when you not use commitlint
- */
- minSubjectLength?: number;
- /**
- * @description: pin type item the top of the types list (match item value)
- */
- defaultType?: string;
- /**
- * @description: Whether to use display default value in custom scope
- * @tip pin scope item the top of the scope list (match item value)
- * @example: When you want to use default, just keyboard <Enter> it
- */
- defaultScope?: string;
- /**
- * @description: default value show subject template prompt
- * @example: If you want to use template complete. just keyboard <Tab> or <Right Arrow> it
- * @example: If you want to use default, just keyboard <Enter> it
- */
- defaultSubject?: string;
- /**
- * @description: default value show body and BREAKINGCHANGES template prompt
- * @example: If you want to use template complete. just keyboard <Tab> or <Right Arrow> it
- * @example: When you want to use default, just keyboard <Enter> it
- */
- defaultBody?: string;
- /**
- * @description: default value show issuePrefixes custom template prompt
- * @example: If you want to use template complete. just keyboard <Tab> or <Right Arrow> it
- * @example: When you want to use default, just keyboard <Enter> it
- */
- defaultFooterPrefix?: string;
- /**
- * @description: default value show issue foot template prompt
- * @example: If you want to use template complete. just keyboard <Tab> or <Right Arrow> it
- * @example: When you want to use default, just keyboard <Enter> it
- */
- defaultIssues?: string;
- /**
- * @description: Whether to use GPG sign commit message (git commit -S -m)
- * @note the options only support `czg` cz-git cli and no support git hooks mode
- * @usage_see https://github.com/Zhengqbbb/cz-git/issues/58
- * @default false
- */
- useCommitSignGPG?: boolean;
- /**
- * @description: provide user custom finally message, can use the callback to change format
- * @param CommitMessageOptions: provide subdivides each message part
- * @default ({ defaultMessage }) => defaultMessage
- */
- formatMessageCB?: (messageMod: CommitMessageOptions) => string;
- }
- declare const defaultConfig: Readonly<CommitizenGitOptions>;
- /**
- * @description: customizable and git support commitizen adapter
- * @author: @Zhengqbbb (zhengqbbb@gmail.com)
- * @license: MIT
- * @copyright: Copyright (c) 2022-present Qiubin Zheng
- */
- declare const prompter: (cz: CommitizenType, commit: (message: string) => void, configPath?: string) => void;
- export { Answers, AnyRuleConfig, AsyncRule, BaseRule, CaseRuleConfig, Commit, CommitMessageOptions, CommitNote, CommitReference, CommitizenGitOptions, CommitizenType, CommitlintUserConfig, Config, EnumRuleConfig, GenerateAIPromptType, LengthRuleConfig, LoadOptions, Option, ParserPreset, Plugin, PluginRecords, QualifiedConfig, QualifiedRuleConfig, QualifiedRules, Rule, RuleConfig, RuleConfigCondition, RuleConfigQuality, RuleConfigSeverity, RuleConfigTuple, RuleOutcome, RuleType, RulesConfig, ScopesType, SyncRule, TargetCaseType, TypesOption, UserConfig, defaultConfig, prompter };
|