params-interface-docs
a doc comment on a function's local Params interface, or on every property inside it
Agent checkadvisory by defaultbasecode
The argument
Params Interfaces
Do NOT document a function's local Params interface — the function's @param tags are sufficient. Individual properties inside it may carry /** */ comments only when name + type don't convey the contract (/** Display name shown in the UI, may differ from username */), and document interfaces at the type level, not every property.
The proof
failsrc/billing/chargeInvoice.ts
/**
* The arguments chargeInvoice takes.
*/
interface Params {
/** The invoice id. */
invoiceId: string;
/** The payer name. */
payerName: string;
}
export const chargeInvoice = ({ invoiceId, payerName }: Params): string => `${invoiceId}${payerName}`;
passsrc/billing/chargeInvoice.ts
interface Params {
invoiceId: string;
/** Display name shown on the receipt, which may differ from the account name. */
payerName: string;
}
/**
* Charges an invoice against the payer's default method.
*
* @param invoiceId - the invoice to charge
* @param payerName - name printed on the receipt
*/
export const chargeInvoice = ({ invoiceId, payerName }: Params): string => `${invoiceId}${payerName}`;
Turn it down
Both lines go in your lightsout.config.json.
"standards-checks": { "params-interface-docs": "advisory" }"standards-checks": { "params-interface-docs": "off" }