ComponentDeclaration.Paramtype ('M, 'T) t = 'M * ('M, 'T) t'and ('M, 'T) t' = {name : ('M, 'T) param_name;local : ('M, 'T) Pattern.t;default : ('M, 'T) Expression.t option;shorthand : bool;}and ('M, 'T) param_name = | Identifier of ('M, 'T) Identifier.t| StringLiteral of 'M * 'M StringLiteral.t