Keeping base class separate since publisher DB model class and publisher contract class share these common properties

interface PublisherBase {
    displayName?: string;
    emailAddress?: string[];
    extensions?: PublishedExtension[];
    flags?: PublisherFlags;
    lastUpdated?: Date;
    longDescription?: string;
    publisherId?: string;
    publisherName?: string;
    shortDescription?: string;
    state?: PublisherState;
}

Hierarchy (View Summary)

Properties

displayName?: string
emailAddress?: string[]
extensions?: PublishedExtension[]
lastUpdated?: Date
longDescription?: string
publisherId?: string
publisherName?: string
shortDescription?: string