@clerc/core 1.0.0-beta.7 → 1.0.0-beta.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.d.ts +7 -7
  2. package/package.json +3 -3
package/dist/index.d.ts CHANGED
@@ -156,7 +156,7 @@ type ClercFlagsDefinition = Record<string, ClercFlagOptionsWithDescription>;
156
156
  //#endregion
157
157
  //#region src/types/parameters.d.ts
158
158
  type InferParameter<T extends string> = T extends `<${infer Name extends string}...>` | `[${infer Name extends string}...]` ? Record<CamelCase<Name>, string[]> : T extends `<${infer Name extends string}>` ? Record<CamelCase<Name>, string> : T extends `[${infer Name extends string}]` ? Record<CamelCase<Name>, string | undefined> : never;
159
- type InferParameters<T extends string[]> = T extends (infer U extends string)[] ? Prettify<UnionToIntersection<InferParameter<U>>> : never;
159
+ type InferParameters<T extends readonly string[]> = T extends readonly (infer U extends string)[] ? Prettify<UnionToIntersection<InferParameter<U>>> : never;
160
160
  //#endregion
161
161
  //#region src/types/context.d.ts
162
162
  type AddStringIndex<T> = T & Record<string, any>;
@@ -174,7 +174,7 @@ interface BaseContext<C extends Command = Command, GF extends ClercFlagsDefiniti
174
174
  //#endregion
175
175
  //#region src/types/command.d.ts
176
176
  interface CommandCustomOptions {}
177
- interface CommandOptions<Parameters extends string[] = string[], Flags extends ClercFlagsDefinition = ClercFlagsDefinition> extends CommandCustomOptions {
177
+ interface CommandOptions<Parameters extends readonly string[] = readonly string[], Flags extends ClercFlagsDefinition = ClercFlagsDefinition> extends CommandCustomOptions {
178
178
  alias?: MaybeArray<string>;
179
179
  parameters?: Parameters;
180
180
  flags?: Flags;
@@ -183,11 +183,11 @@ interface CommandOptions<Parameters extends string[] = string[], Flags extends C
183
183
  */
184
184
  ignore?: IgnoreFunction;
185
185
  }
186
- interface Command<Name$1 extends string = string, Parameters extends string[] = string[], Flags extends ClercFlagsDefinition = ClercFlagsDefinition> extends CommandOptions<Parameters, Flags> {
186
+ interface Command<Name$1 extends string = string, Parameters extends readonly string[] = readonly string[], Flags extends ClercFlagsDefinition = ClercFlagsDefinition> extends CommandOptions<Parameters, Flags> {
187
187
  name: Name$1;
188
188
  description: string;
189
189
  }
190
- type CommandWithHandler<Name$1 extends string = string, Parameters extends string[] = string[], Flags extends ClercFlagsDefinition = ClercFlagsDefinition> = Command<Name$1, Parameters, Flags> & {
190
+ type CommandWithHandler<Name$1 extends string = string, Parameters extends readonly string[] = readonly string[], Flags extends ClercFlagsDefinition = ClercFlagsDefinition> = Command<Name$1, Parameters, Flags> & {
191
191
  handler?: CommandHandler<Command<Name$1, Parameters, Flags>>;
192
192
  };
193
193
  type CommandsRecord = Record<string, Command>;
@@ -244,8 +244,8 @@ declare class Clerc<Commands extends CommandsRecord = {}, GlobalFlags extends Cl
244
244
  version(version: string): this;
245
245
  use(plugin: Plugin): this;
246
246
  errorHandler(handler: ErrorHandler$1): this;
247
- command<Name$1 extends string, Parameters extends string[] = [], Flags extends ClercFlagsDefinition = {}>(command: CommandWithHandler<Name$1, [...Parameters], Flags>): Clerc<Commands & Record<string, CommandWithHandler<Name$1, Parameters, Flags>>, GlobalFlags>;
248
- command<Name$1 extends string, Parameters extends string[] = [], Flags extends ClercFlagsDefinition = {}>(name: Name$1 extends keyof Commands ? ["COMMAND ALREADY EXISTS"] : Name$1, description: string, options?: CommandOptions<[...Parameters], Flags>): Clerc<Commands & Record<Name$1, Command<Name$1, Parameters, Flags>>, GlobalFlags>;
247
+ command<Name$1 extends string, const Parameters extends readonly string[] = readonly [], Flags extends ClercFlagsDefinition = {}>(command: CommandWithHandler<Name$1, Parameters, Flags>): Clerc<Commands & Record<string, CommandWithHandler<Name$1, Parameters, Flags>>, GlobalFlags>;
248
+ command<Name$1 extends string, const Parameters extends readonly string[] = readonly [], Flags extends ClercFlagsDefinition = {}>(name: Name$1 extends keyof Commands ? ["COMMAND ALREADY EXISTS"] : Name$1, description: string, options?: CommandOptions<Parameters, Flags>): Clerc<Commands & Record<Name$1, Command<Name$1, Parameters, Flags>>, GlobalFlags>;
249
249
  globalFlag<Name$1 extends string, Flag extends ClercGlobalFlagDefinitionValue>(name: Name$1, description: string, options: Flag): Clerc<Commands, GlobalFlags & Record<Name$1, Flag>>;
250
250
  interceptor(interceptor: Interceptor<Command, GlobalFlags>): this;
251
251
  on<Name$1 extends LiteralUnion<keyof Commands, string>>(name: Name$1, handler: CommandHandler<Commands[Name$1], GlobalFlags>): this;
@@ -275,7 +275,7 @@ declare class InvalidParametersError extends Error {
275
275
  }
276
276
  //#endregion
277
277
  //#region src/helpers.d.ts
278
- declare const defineCommand: <Name$1 extends string, Parameters extends string[] = [], Flags extends ClercFlagsDefinition = {}>(command: Command<Name$1, [...Parameters], Flags>, handler?: NoInfer<CommandHandler<Command<Name$1, Parameters, Flags>>>) => CommandWithHandler<Name$1, Parameters, Flags>;
278
+ declare const defineCommand: <Name$1 extends string, const Parameters extends readonly string[] = readonly [], Flags extends ClercFlagsDefinition = {}>(command: Command<Name$1, Parameters, Flags>, handler?: NoInfer<CommandHandler<Command<Name$1, Parameters, Flags>>>) => CommandWithHandler<Name$1, Parameters, Flags>;
279
279
  //#endregion
280
280
  //#region src/ignore.d.ts
281
281
  declare function createStopAtFirstParameter(): IgnoreFunction;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clerc/core",
3
- "version": "1.0.0-beta.7",
3
+ "version": "1.0.0-beta.9",
4
4
  "author": "Ray <i@mk1.io> (https://github.com/so1ve)",
5
5
  "type": "module",
6
6
  "description": "Clerc core",
@@ -45,8 +45,8 @@
45
45
  },
46
46
  "dependencies": {
47
47
  "lite-emit": "^3.1.0",
48
- "@clerc/parser": "^1.0.0-beta.7",
49
- "@clerc/utils": "1.0.0-beta.7"
48
+ "@clerc/parser": "^1.0.0-beta.9",
49
+ "@clerc/utils": "1.0.0-beta.9"
50
50
  },
51
51
  "devDependencies": {
52
52
  "is-platform": "^1.0.0"