@@ -195,6 +195,12 @@ is only one property-value object field present. Defaults to `false`.
195195How string literals should be quoted (e.g., ` "abc" ` ). Set to ` single `
196196or ` double ` . Defaults to 'double'.
197197
198+ <a name =" user-content-type-formatting-options-trailingpunctuationmultilineonly " ></a >
199+ <a name =" type-formatting-options-trailingpunctuationmultilineonly " ></a >
200+ ### <code >trailingPunctuationMultilineOnly</code >
201+
202+ If ` objectFieldSeparatorTrailingPunctuation ` is set, this will determine whether the trailing puncutation is only added when the type is multiline
203+
198204<a name =" user-content-type-formatting-options-typebracketspacing " ></a >
199205<a name =" type-formatting-options-typebracketspacing " ></a >
200206### <code >typeBracketSpacing</code >
@@ -216,7 +222,7 @@ Determines the spacing to add to unions (`|`). Defaults to a single space (`" "`
216222| Tags| ` param ` , ` property ` , ` returns ` , ` this ` , ` throws ` , ` type ` , ` typedef ` , ` yields ` |
217223| Recommended| false|
218224| Settings| ` mode ` |
219- | Options| ` arrayBrackets ` , ` arrowFunctionPostReturnMarkerSpacing ` , ` arrowFunctionPreReturnMarkerSpacing ` , ` enableFixer ` , ` functionOrClassParameterSpacing ` , ` functionOrClassPostGenericSpacing ` , ` functionOrClassPostReturnMarkerSpacing ` , ` functionOrClassPreReturnMarkerSpacing ` , ` functionOrClassTypeParameterSpacing ` , ` genericAndTupleElementSpacing ` , ` genericDot ` , ` keyValuePostColonSpacing ` , ` keyValuePostKeySpacing ` , ` keyValuePostOptionalSpacing ` , ` keyValuePostVariadicSpacing ` , ` methodQuotes ` , ` objectFieldIndent ` , ` objectFieldQuote ` , ` objectFieldSeparator ` , ` objectFieldSeparatorOptionalLinebreak ` , ` objectFieldSeparatorTrailingPunctuation ` , ` objectTypeBracketSpacing ` , ` parameterDefaultValueSpacing ` , ` postMethodNameSpacing ` , ` postNewSpacing ` , ` separatorForSingleObjectField ` , ` stringQuotes ` , ` typeBracketSpacing ` , ` unionSpacing ` |
225+ | Options| ` arrayBrackets ` , ` arrowFunctionPostReturnMarkerSpacing ` , ` arrowFunctionPreReturnMarkerSpacing ` , ` enableFixer ` , ` functionOrClassParameterSpacing ` , ` functionOrClassPostGenericSpacing ` , ` functionOrClassPostReturnMarkerSpacing ` , ` functionOrClassPreReturnMarkerSpacing ` , ` functionOrClassTypeParameterSpacing ` , ` genericAndTupleElementSpacing ` , ` genericDot ` , ` keyValuePostColonSpacing ` , ` keyValuePostKeySpacing ` , ` keyValuePostOptionalSpacing ` , ` keyValuePostVariadicSpacing ` , ` methodQuotes ` , ` objectFieldIndent ` , ` objectFieldQuote ` , ` objectFieldSeparator ` , ` objectFieldSeparatorOptionalLinebreak ` , ` objectFieldSeparatorTrailingPunctuation ` , ` objectTypeBracketSpacing ` , ` parameterDefaultValueSpacing ` , ` postMethodNameSpacing ` , ` postNewSpacing ` , ` separatorForSingleObjectField ` , ` stringQuotes ` , ` trailingPunctuationMultilineOnly ` , ` typeBracketSpacing ` , ` unionSpacing ` |
220226
221227<a name =" user-content-type-formatting-failing-examples " ></a >
222228<a name =" type-formatting-failing-examples " ></a >
@@ -515,7 +521,23 @@ The following patterns are considered problems:
515521 * @param {{a: string}} cfg
516522 */
517523// "jsdoc/type-formatting": ["error"|"warn", {"objectTypeBracketSpacing":" "}]
518- // Message: Object type bracket spacing should be " "
524+ // Message: There was an error with type formatting
525+
526+ /**
527+ * @typedef {{ a: boolean, b: string, c: number, }} Example
528+ */
529+ // "jsdoc/type-formatting": ["error"|"warn", {"objectFieldSeparator":"comma-and-linebreak","objectFieldSeparatorTrailingPunctuation":true,"objectTypeBracketSpacing":" ","trailingPunctuationMultilineOnly":true}]
530+ // Message: There was an error with type formatting
531+
532+ /**
533+ * @typedef {{
534+ * a: boolean,
535+ * b: string,
536+ * c: number
537+ * }} Example
538+ */
539+ // "jsdoc/type-formatting": ["error"|"warn", {"objectFieldSeparator":"comma-and-linebreak","objectFieldSeparatorTrailingPunctuation":true,"objectTypeBracketSpacing":" ","trailingPunctuationMultilineOnly":true}]
540+ // Message: Inconsistent comma-and-linebreak separator usage
519541````
520542
521543
@@ -705,5 +727,19 @@ The following patterns are not considered problems:
705727 * @param {{a: string}} cfg
706728 */
707729// "jsdoc/type-formatting": ["error"|"warn", {"objectTypeBracketSpacing":""}]
730+
731+ /**
732+ * @typedef {{ a: boolean, b: string, c: number }} Example
733+ */
734+ // "jsdoc/type-formatting": ["error"|"warn", {"objectFieldSeparator":"comma-and-linebreak","objectFieldSeparatorTrailingPunctuation":true,"objectTypeBracketSpacing":" ","trailingPunctuationMultilineOnly":true}]
735+
736+ /**
737+ * @typedef {{
738+ * a: boolean,
739+ * b: string,
740+ * c: number,
741+ * }} Example
742+ */
743+ // "jsdoc/type-formatting": ["error"|"warn", {"objectFieldSeparator":"comma-and-linebreak","objectFieldSeparatorTrailingPunctuation":true,"objectTypeBracketSpacing":" ","trailingPunctuationMultilineOnly":true}]
708744````
709745
0 commit comments