objectEvaluateParametersParameter:
    | {
        key?: LooseAutocomplete<"">;
        maxLength?: number;
        type:
            | "presetText"
            | "number"
            | "boolean"
            | "neboolean"
            | "string"
            | "non-booleanString"
            | "json"
            | "Vector"
            | "Vector1"
            | "Vector2"
            | "Vector3"
            | "Vector4"
            | "Vector5"
            | "Vector6"
            | "Vector7"
            | "Vector8"
            | "targetSelector"
            | "blockStates"
            | "blockPattern"
            | "block"
            | "blockMask"
            | "dimension"
            | `-${string}`
            | `f-${string}`;
    }
    | {
        key?: LooseAutocomplete<"">;
        maxLength?: number;
        type: "Vectors";
        vectorCount?: number;
    }
    | {
        delimeter?: LooseAutocomplete<"">;
        key?: LooseAutocomplete<"">;
        maxLength?: number;
        name: LooseAutocomplete<"">;
        nameIsCaseSensitive?: boolean;
        type: "ignorableNamedParameter";
        valueType?: Exclude<
            evaluateParametersParameter,
            { type: "ignorableNamedParameter" },
        >;
    }

An advanced paramter for the evaluateParameters function.

This is for parameter types that are specified by an object.

Type declaration

  • {
        key?: LooseAutocomplete<"">;
        maxLength?: number;
        type:
            | "presetText"
            | "number"
            | "boolean"
            | "neboolean"
            | "string"
            | "non-booleanString"
            | "json"
            | "Vector"
            | "Vector1"
            | "Vector2"
            | "Vector3"
            | "Vector4"
            | "Vector5"
            | "Vector6"
            | "Vector7"
            | "Vector8"
            | "targetSelector"
            | "blockStates"
            | "blockPattern"
            | "block"
            | "blockMask"
            | "dimension"
            | `-${string}`
            | `f-${string}`;
    }
    • Optionalkey?: LooseAutocomplete<"">

      The key to use for this parameter.

      If specified, it will be used as the property name used in the returned args object.

      This uses the LooseAutocomplete type to make sure that the type is inferred as a string literal rather than the generic string type.

      Index
      
    • OptionalmaxLength?: number

      The maximum length of the parameter.

      This property is unused.

      Infinity
      
    • type:
          | "presetText"
          | "number"
          | "boolean"
          | "neboolean"
          | "string"
          | "non-booleanString"
          | "json"
          | "Vector"
          | "Vector1"
          | "Vector2"
          | "Vector3"
          | "Vector4"
          | "Vector5"
          | "Vector6"
          | "Vector7"
          | "Vector8"
          | "targetSelector"
          | "blockStates"
          | "blockPattern"
          | "block"
          | "blockMask"
          | "dimension"
          | `-${string}`
          | `f-${string}`

      The type of the parameter.

  • {
        key?: LooseAutocomplete<"">;
        maxLength?: number;
        type: "Vectors";
        vectorCount?: number;
    }
    • Optionalkey?: LooseAutocomplete<"">

      The key to use for this parameter.

      If specified, it will be used as the property name used in the returned args object.

      This uses the LooseAutocomplete type to make sure that the type is inferred as a string literal rather than the generic string type.

      Index
      
    • OptionalmaxLength?: number

      The maximum length of the parameter.

      This property is unused.

      Infinity
      
    • type: "Vectors"

      The type of the parameter.

    • OptionalvectorCount?: number

      The number of vectors to expect.

      3
      
  • {
        delimeter?: LooseAutocomplete<"">;
        key?: LooseAutocomplete<"">;
        maxLength?: number;
        name: LooseAutocomplete<"">;
        nameIsCaseSensitive?: boolean;
        type: "ignorableNamedParameter";
        valueType?: Exclude<
            evaluateParametersParameter,
            { type: "ignorableNamedParameter" },
        >;
    }
    • Optionaldelimeter?: LooseAutocomplete<"">

      The delimeter to use between the name and the value.

      This uses the LooseAutocomplete type to make sure that the type is inferred as a string literal rather than the generic string type.

      "="
      
    • Optionalkey?: LooseAutocomplete<"">

      The key to use for this parameter.

      If specified, it will be used as the property name used in the returned args object.

      This uses the LooseAutocomplete type to make sure that the type is inferred as a string literal rather than the generic string type.

      Index
      
    • OptionalmaxLength?: number

      The maximum length of the parameter.

      This property is unused.

      Infinity
      
    • name: LooseAutocomplete<"">

      The name of the parameter.

      This will be used for users to provide the parameter.

      The value users will enter will be formatted as: ${name}${delimeter ?? "="}value or ${name}${delimeter ?? "="}"value with spaces and escape codes"

      This uses the LooseAutocomplete type to make sure that the type is inferred as a string literal rather than the generic string type.

    • OptionalnameIsCaseSensitive?: boolean

      Whether the name is case sensitive.

      false
      
    • type: "ignorableNamedParameter"

      The type of the parameter.

    • OptionalvalueType?: Exclude<evaluateParametersParameter, { type: "ignorableNamedParameter" }>

      The value type of the parameter.

      This currently only supports the following types:

      • string
      • number
      • boolean
      "string"