declare namespace SystemCenter {
    namespace Lists {
        const AdditionalFieldTypes: Types.AdditionalFieldType[];
    }
    namespace Types {
        type AdditionalFieldType = 'integer' | 'number' | 'string' | 'boolean' | string;
        interface Setting {
            ID: number;
            Name: string;
            Value: string;
            DefaultValue: string;
        }
        interface AdditionalField {
            ID: number;
            ParentTable: string;
            FieldName: string;
            Type: AdditionalFieldType;
            ExternalDBTableID?: number;
            IsSecure: boolean;
            IsInfo: boolean;
            IsKey: boolean;
            Searchable: boolean;
        }
        interface AdditionalFieldView extends AdditionalField {
            ExternalDB?: string;
            ExternalTable?: string;
        }
        interface AdditionalFieldValue {
            ID: number;
            ParentTableID: number;
            AdditionalFieldID: number;
            Value: string;
        }
        interface ExternalOpenXDAField {
            ID: number;
            ParentTable: string;
            FieldName: string;
            ExternalDBTableID: number;
        }
        interface ValueListGroup {
            ID: number;
            Name: string;
            Description: string;
            Items?: ValueListItem[];
        }
        interface ValueListItem {
            ID: number;
            GroupID: number;
            AltValue: string;
            Value: string;
            SortOrder: number;
        }
        interface ChannelGroup {
            ID: number;
            Name: string;
            Description: string;
            Items?: ChannelGroupDetails[];
        }
        interface ChannelGroupDetails {
            ID: number;
            ChannelGroupID: number;
            ChannelGroup: string;
            MeasurementTypeID: number;
            MeasurementType: string;
            MeasurementCharacteristicID: number;
            MeasurementCharacteristic: string;
            DisplayName: string;
            Unit: string;
        }
        interface LocationDrawing {
            ID: number;
            LocationID: number;
            Name: string;
            Link: string;
            Description: string;
            Number: string;
            Category: string;
        }
        interface ExternalDatabases {
            ID: number;
            Name: string;
            Schedule: string;
            ConnectionString: string;
            DataProviderString: string;
            Encrypt: boolean;
        }
        interface DetailedExternalDatabases extends ExternalDatabases {
            LastDataUpdate?: string;
            MappedTables?: number;
            MappedFields?: number;
        }
        interface extDBTables {
            ID: number;
            TableName: string;
            ExtDBID: number;
            Query: string;
        }
        interface DetailedExtDBTables extends extDBTables {
            ExternalDB?: string;
            MappedFields?: number;
        }
        interface DetailedAsset {
            ID: number;
            AssetKey: string;
            AssetName: string;
            VoltageKV: number;
            AssetType: string;
            Meters: number;
            Locations: number;
        }
        interface DetailedMeter {
            ID: number;
            AssetKey: string;
            Name: string;
            Location: string;
            MappedAssets: number;
            Make: string;
            Model: string;
        }
        interface DetailedLocation {
            ID: number;
            LocationKey: string;
            Name: string;
            Description: string;
            Alias: string;
            ShortName: string;
            Longitude: number;
            Latitude: number;
            Meters: number;
            Assets: number;
        }
        interface LSCVSAccount {
            ID: number;
            AccountID: string;
            CustomerID: number;
        }
        interface PQApplications {
            ID: number;
            Name: string;
            Url: string;
            Image: string;
            CategoryID: number;
            SortOrder: number;
        }
        interface ApplicationCategory {
            ID: number;
            Name: string;
            SortOrder: number;
        }
    }
}
export default SystemCenter;
