function _ts_decorate(decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
}
function _ts_metadata(k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
}
import { Entity, Column, PrimaryColumn } from "typeorm";
import { id } from "../id.js";
export let Meta = class Meta {
    id;
    name;
    description;
    /**
	 * メンテナの名前
	 */ maintainerName;
    /**
	 * メンテナの連絡先
	 */ maintainerEmail;
    disableRegistration;
    disableLocalTimeline;
    disableRecommendedTimeline;
    disableGlobalTimeline;
    defaultReaction;
    langs;
    pinnedUsers;
    recommendedInstances;
    customMOTD;
    customSplashIcons;
    hiddenTags;
    blockedHosts;
    silencedHosts;
    secureMode;
    privateMode;
    allowedHosts;
    pinnedPages;
    pinnedClipId;
    themeColor;
    mascotImageUrl;
    bannerUrl;
    backgroundImageUrl;
    logoImageUrl;
    errorImageUrl;
    iconUrl;
    cacheRemoteFiles;
    emailRequiredForSignup;
    enableHcaptcha;
    hcaptchaSiteKey;
    hcaptchaSecretKey;
    enableRecaptcha;
    recaptchaSiteKey;
    recaptchaSecretKey;
    localDriveCapacityMb;
    remoteDriveCapacityMb;
    summalyProxy;
    enableEmail;
    email;
    smtpSecure;
    smtpHost;
    smtpPort;
    smtpUser;
    smtpPass;
    swPublicKey;
    swPrivateKey;
    enableGithubIntegration;
    githubClientId;
    githubClientSecret;
    enableDiscordIntegration;
    discordClientId;
    discordClientSecret;
    deeplAuthKey;
    deeplIsPro;
    libreTranslateApiUrl;
    libreTranslateApiKey;
    ToSUrl;
    repositoryUrl;
    feedbackUrl;
    defaultLightTheme;
    defaultDarkTheme;
    useObjectStorage;
    objectStorageBucket;
    objectStoragePrefix;
    objectStorageBaseUrl;
    objectStorageEndpoint;
    objectStorageRegion;
    objectStorageAccessKey;
    objectStorageSecretKey;
    objectStoragePort;
    objectStorageUseSSL;
    objectStorageUseProxy;
    objectStorageSetPublicRead;
    objectStorageS3ForcePathStyle;
    enableIpLogging;
    enableActiveEmailValidation;
    experimentalFeatures;
    enableServerMachineStats;
    enableIdenticonGeneration;
    donationLink;
    autofollowedAccount;
};
_ts_decorate([
    PrimaryColumn({
        type: "varchar",
        length: 32
    }),
    _ts_metadata("design:type", String)
], Meta.prototype, "id", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "name", void 0);
_ts_decorate([
    Column("varchar", {
        length: 1024,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "description", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "maintainerName", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "maintainerEmail", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "disableRegistration", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "disableLocalTimeline", void 0);
_ts_decorate([
    Column("boolean", {
        default: true
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "disableRecommendedTimeline", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "disableGlobalTimeline", void 0);
_ts_decorate([
    Column("varchar", {
        length: 256,
        default: "⭐"
    }),
    _ts_metadata("design:type", String)
], Meta.prototype, "defaultReaction", void 0);
_ts_decorate([
    Column("varchar", {
        length: 64,
        array: true,
        default: "{}"
    }),
    _ts_metadata("design:type", Array)
], Meta.prototype, "langs", void 0);
_ts_decorate([
    Column("varchar", {
        length: 256,
        array: true,
        default: "{}"
    }),
    _ts_metadata("design:type", Array)
], Meta.prototype, "pinnedUsers", void 0);
_ts_decorate([
    Column("varchar", {
        length: 256,
        array: true,
        default: "{}"
    }),
    _ts_metadata("design:type", Array)
], Meta.prototype, "recommendedInstances", void 0);
_ts_decorate([
    Column("varchar", {
        length: 256,
        array: true,
        default: "{}"
    }),
    _ts_metadata("design:type", Array)
], Meta.prototype, "customMOTD", void 0);
_ts_decorate([
    Column("varchar", {
        length: 256,
        array: true,
        default: "{}"
    }),
    _ts_metadata("design:type", Array)
], Meta.prototype, "customSplashIcons", void 0);
_ts_decorate([
    Column("varchar", {
        length: 256,
        array: true,
        default: "{}"
    }),
    _ts_metadata("design:type", Array)
], Meta.prototype, "hiddenTags", void 0);
_ts_decorate([
    Column("varchar", {
        length: 256,
        array: true,
        default: "{}"
    }),
    _ts_metadata("design:type", Array)
], Meta.prototype, "blockedHosts", void 0);
_ts_decorate([
    Column("varchar", {
        length: 256,
        array: true,
        default: "{}"
    }),
    _ts_metadata("design:type", Array)
], Meta.prototype, "silencedHosts", void 0);
_ts_decorate([
    Column("boolean", {
        default: true
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "secureMode", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "privateMode", void 0);
_ts_decorate([
    Column("varchar", {
        length: 256,
        array: true,
        default: "{}"
    }),
    _ts_metadata("design:type", Array)
], Meta.prototype, "allowedHosts", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        array: true,
        default: "{/featured,/channels,/explore,/pages,/about-iceshrimp}"
    }),
    _ts_metadata("design:type", Array)
], Meta.prototype, "pinnedPages", void 0);
_ts_decorate([
    Column({
        ...id(),
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "pinnedClipId", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "themeColor", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true,
        default: "/static-assets/badges/info.png"
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "mascotImageUrl", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "bannerUrl", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "backgroundImageUrl", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "logoImageUrl", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true,
        default: "/static-assets/badges/error.png"
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "errorImageUrl", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "iconUrl", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "cacheRemoteFiles", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "emailRequiredForSignup", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "enableHcaptcha", void 0);
_ts_decorate([
    Column("varchar", {
        length: 64,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "hcaptchaSiteKey", void 0);
_ts_decorate([
    Column("varchar", {
        length: 64,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "hcaptchaSecretKey", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "enableRecaptcha", void 0);
_ts_decorate([
    Column("varchar", {
        length: 64,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "recaptchaSiteKey", void 0);
_ts_decorate([
    Column("varchar", {
        length: 64,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "recaptchaSecretKey", void 0);
_ts_decorate([
    Column("integer", {
        default: 1024,
        comment: "Drive capacity of a local user (MB)"
    }),
    _ts_metadata("design:type", Number)
], Meta.prototype, "localDriveCapacityMb", void 0);
_ts_decorate([
    Column("integer", {
        default: 32,
        comment: "Drive capacity of a remote user (MB)"
    }),
    _ts_metadata("design:type", Number)
], Meta.prototype, "remoteDriveCapacityMb", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "summalyProxy", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "enableEmail", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "email", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "smtpSecure", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "smtpHost", void 0);
_ts_decorate([
    Column("integer", {
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "smtpPort", void 0);
_ts_decorate([
    Column("varchar", {
        length: 1024,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "smtpUser", void 0);
_ts_decorate([
    Column("varchar", {
        length: 1024,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "smtpPass", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: false
    }),
    _ts_metadata("design:type", String)
], Meta.prototype, "swPublicKey", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: false
    }),
    _ts_metadata("design:type", String)
], Meta.prototype, "swPrivateKey", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "enableGithubIntegration", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "githubClientId", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "githubClientSecret", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "enableDiscordIntegration", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "discordClientId", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "discordClientSecret", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "deeplAuthKey", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "deeplIsPro", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "libreTranslateApiUrl", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "libreTranslateApiKey", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "ToSUrl", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        default: "https://iceshrimp.dev/iceshrimp/iceshrimp",
        nullable: false
    }),
    _ts_metadata("design:type", String)
], Meta.prototype, "repositoryUrl", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        default: "https://iceshrimp.dev/iceshrimp/iceshrimp/issues/new",
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "feedbackUrl", void 0);
_ts_decorate([
    Column("varchar", {
        length: 8192,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "defaultLightTheme", void 0);
_ts_decorate([
    Column("varchar", {
        length: 8192,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "defaultDarkTheme", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "useObjectStorage", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "objectStorageBucket", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "objectStoragePrefix", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "objectStorageBaseUrl", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "objectStorageEndpoint", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "objectStorageRegion", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "objectStorageAccessKey", void 0);
_ts_decorate([
    Column("varchar", {
        length: 512,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "objectStorageSecretKey", void 0);
_ts_decorate([
    Column("integer", {
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "objectStoragePort", void 0);
_ts_decorate([
    Column("boolean", {
        default: true
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "objectStorageUseSSL", void 0);
_ts_decorate([
    Column("boolean", {
        default: true
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "objectStorageUseProxy", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "objectStorageSetPublicRead", void 0);
_ts_decorate([
    Column("boolean", {
        default: true
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "objectStorageS3ForcePathStyle", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "enableIpLogging", void 0);
_ts_decorate([
    Column("boolean", {
        default: true
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "enableActiveEmailValidation", void 0);
_ts_decorate([
    Column("jsonb", {
        default: {}
    }),
    _ts_metadata("design:type", typeof Record === "undefined" ? Object : Record)
], Meta.prototype, "experimentalFeatures", void 0);
_ts_decorate([
    Column("boolean", {
        default: false
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "enableServerMachineStats", void 0);
_ts_decorate([
    Column("boolean", {
        default: true
    }),
    _ts_metadata("design:type", Boolean)
], Meta.prototype, "enableIdenticonGeneration", void 0);
_ts_decorate([
    Column("varchar", {
        length: 256,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "donationLink", void 0);
_ts_decorate([
    Column("varchar", {
        length: 128,
        nullable: true
    }),
    _ts_metadata("design:type", Object)
], Meta.prototype, "autofollowedAccount", void 0);
Meta = _ts_decorate([
    Entity()
], Meta);
