13af6ab5fSopenharmony_ci#  Construct signatures are not supported in interfaces
23af6ab5fSopenharmony_ci
33af6ab5fSopenharmony_ciRule ``arkts-no-ctor-signatures-iface``
43af6ab5fSopenharmony_ci
53af6ab5fSopenharmony_ci**Severity: error**
63af6ab5fSopenharmony_ci
73af6ab5fSopenharmony_ciArkTS does not support construct signatures. Use methods instead.
83af6ab5fSopenharmony_ci
93af6ab5fSopenharmony_ci
103af6ab5fSopenharmony_ci## TypeScript
113af6ab5fSopenharmony_ci
123af6ab5fSopenharmony_ci
133af6ab5fSopenharmony_ci```
143af6ab5fSopenharmony_ci
153af6ab5fSopenharmony_ci    interface I {
163af6ab5fSopenharmony_ci        new (s: string): I
173af6ab5fSopenharmony_ci    }
183af6ab5fSopenharmony_ci
193af6ab5fSopenharmony_ci    function fn(i: I) {
203af6ab5fSopenharmony_ci        return new i("hello")
213af6ab5fSopenharmony_ci    }
223af6ab5fSopenharmony_ci
233af6ab5fSopenharmony_ci```
243af6ab5fSopenharmony_ci
253af6ab5fSopenharmony_ci## ArkTS
263af6ab5fSopenharmony_ci
273af6ab5fSopenharmony_ci
283af6ab5fSopenharmony_ci```
293af6ab5fSopenharmony_ci
303af6ab5fSopenharmony_ci    interface I {
313af6ab5fSopenharmony_ci        create(s: string): I
323af6ab5fSopenharmony_ci    }
333af6ab5fSopenharmony_ci
343af6ab5fSopenharmony_ci    function fn(i: I) {
353af6ab5fSopenharmony_ci        return i.create("hello")
363af6ab5fSopenharmony_ci    }
373af6ab5fSopenharmony_ci
383af6ab5fSopenharmony_ci```
393af6ab5fSopenharmony_ci
403af6ab5fSopenharmony_ci## See also
413af6ab5fSopenharmony_ci
423af6ab5fSopenharmony_ci- Recipe 015:  Use ``class`` instead of a type with constructor signature (``arkts-no-ctor-signatures-type``)
433af6ab5fSopenharmony_ci
443af6ab5fSopenharmony_ci
45