Typescript generation of dto's

It’s extremely important that the Add ServiceStack Reference feature only publishes services included in the Service Contract and not pollute the generated Types with internal system types or unrelated types. It’s very easy for the type count to explode if we included all types in ServiceModel and all types it references.

There is an easy workaround for the few times you want to publish types outside your Service contract, create a DTO holder, call it something that represents your use-case like:

public class SignalRTypes {
    public Campaign Campaign { get; set; }
    public DataEvent DataEvent { get; set; }
}

public class MyServices : Service 
{
    public object Any(SignalRTypes request) => request;
}

I’m against adding complexity and introducing potential breaking changes when there’s already an easy and intuitive way to do what you need. We don’t need to change or pollute features for these niche use-cases when we can already use the existing functionality to do it.