// This file is generated by go generate

import type { ServiceInfos } from "$lib/model/service_specs.svelte";
export const servicesSpecs: Record<string, ServiceInfos> = {
    "abstract.ACMEChallenge": {
        "name": "ACME Challenge",
        "_svctype": "abstract.ACMEChallenge",
        "description": "Temporary record to prove that you control the sub-domain.",
        "family": "abstract",
        "categories": [
            "temporary",
            "verification"
        ],
        "record_types": null,
        "restrictions": {
            "nearAlone": true
        }
    },
    "abstract.Delegation": {
        "name": "Delegation",
        "_svctype": "abstract.Delegation",
        "description": "Delegate this subdomain to another name server",
        "family": "abstract",
        "categories": [
            "domain name"
        ],
        "record_types": [
            2,
            43
        ],
        "restrictions": {
            "alone": true,
            "exclusive": [
                "abstract.Origin",
                "abstract.NSOnlyOrigin"
            ],
            "leaf": true,
            "needTypes": [
                2
            ],
            "single": true
        }
    },
    "abstract.GithubOrgVerif": {
        "name": "GitHub Verification",
        "_svctype": "abstract.GithubOrgVerif",
        "description": "Temporary record to prove that you control the domain.",
        "family": "abstract",
        "categories": [
            "verification"
        ],
        "record_types": null,
        "restrictions": {
            "nearAlone": true
        }
    },
    "abstract.GitlabPageVerif": {
        "name": "Gitlab Pages Verification",
        "_svctype": "abstract.GitlabPageVerif",
        "description": "Temporary record to prove that you control the domain.",
        "family": "abstract",
        "categories": [
            "verification"
        ],
        "record_types": null,
        "restrictions": {
            "nearAlone": true
        }
    },
    "abstract.GoogleVerif": {
        "name": "Google Verification",
        "_svctype": "abstract.GoogleVerif",
        "description": "Temporary record to prove that you control the domain.",
        "family": "abstract",
        "categories": [
            "verification"
        ],
        "record_types": null,
        "restrictions": {}
    },
    "abstract.KeybaseVerif": {
        "name": "Keybase Verification",
        "_svctype": "abstract.KeybaseVerif",
        "description": "Temporary record to prove that you control the domain.",
        "family": "abstract",
        "categories": [
            "verification"
        ],
        "record_types": null,
        "restrictions": {
            "nearAlone": true
        }
    },
    "abstract.MatrixIM": {
        "name": "Matrix IM",
        "_svctype": "abstract.MatrixIM",
        "description": "Communicate on Matrix using your domain.",
        "family": "abstract",
        "categories": [
            "service"
        ],
        "record_types": null,
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                33
            ],
            "single": true
        }
    },
    "abstract.NSOnlyOrigin": {
        "name": "Origin",
        "_svctype": "abstract.NSOnlyOrigin",
        "description": "This is the root of your domain.",
        "family": "hidden",
        "categories": [
            "domain name"
        ],
        "record_types": [
            2
        ],
        "restrictions": {
            "needTypes": [
                2
            ],
            "rootOnly": true,
            "single": true
        }
    },
    "abstract.OpenPGP": {
        "name": "PGP Key",
        "_svctype": "abstract.OpenPGP",
        "description": "Let users retrieve PGP key automatically.",
        "family": "abstract",
        "categories": [
            "email"
        ],
        "record_types": [
            61
        ],
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                61
            ]
        }
    },
    "abstract.Origin": {
        "name": "Origin",
        "_svctype": "abstract.Origin",
        "description": "This is the root of your domain.",
        "family": "abstract",
        "categories": [
            "domain name"
        ],
        "record_types": [
            6,
            2
        ],
        "restrictions": {
            "needTypes": [
                6
            ],
            "rootOnly": true,
            "single": true
        }
    },
    "abstract.RFC6186": {
        "name": "E-Mail Services Discovery",
        "_svctype": "abstract.RFC6186",
        "description": "Make email clients aware of the domain configuration to send and receive emails. RFC 6186",
        "family": "abstract",
        "categories": [
            "email"
        ],
        "record_types": null,
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                33
            ],
            "single": true
        }
    },
    "abstract.SMimeCert": {
        "name": "SMimeCert",
        "_svctype": "abstract.SMimeCert",
        "description": "Publish S/MIME certificate.",
        "family": "abstract",
        "categories": [
            "email"
        ],
        "record_types": [
            53
        ],
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                53
            ]
        }
    },
    "abstract.ScalewayChallenge": {
        "name": "Scaleway Challenge",
        "_svctype": "abstract.ScalewayChallenge",
        "description": "Temporary record to prove that you control the domain.",
        "family": "abstract",
        "categories": [
            "verification"
        ],
        "record_types": null,
        "restrictions": {
            "nearAlone": true
        }
    },
    "abstract.Server": {
        "name": "Server",
        "_svctype": "abstract.Server",
        "description": "A system to respond to specific requests.",
        "family": "abstract",
        "categories": [
            "server"
        ],
        "record_types": [
            1,
            28,
            44
        ],
        "restrictions": {
            "glue": true
        }
    },
    "abstract.XMPP": {
        "name": "XMPP IM",
        "_svctype": "abstract.XMPP",
        "description": "Communicate over XMPP with your domain.",
        "family": "abstract",
        "categories": [
            "service"
        ],
        "record_types": null,
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                33
            ],
            "single": true
        }
    },
    "google.GSuite": {
        "name": "G Suite",
        "_svctype": "google.GSuite",
        "_svcicon": "/api/service_specs/google.GSuite/icon.png",
        "description": "The suite of cloud computing, productivity and collaboration tools by Google.",
        "family": "provider",
        "categories": [
            "email"
        ],
        "record_types": null,
        "restrictions": {
            "exclusive": [
                "abstract.EMail",
                "svcs.MX"
            ],
            "needTypes": [
                15
            ],
            "single": true
        }
    },
    "svcs.CAAPolicy": {
        "name": "Certification Authority Authorization",
        "_svctype": "svcs.CAAPolicy",
        "description": "Indicate to certificate authorities whether they are authorized to issue digital certificates for a particular domain name.",
        "family": "",
        "categories": [
            "security"
        ],
        "record_types": [
            257
        ],
        "restrictions": {
            "needTypes": [
                257
            ],
            "single": true
        }
    },
    "svcs.CNAME": {
        "name": "Alias",
        "_svctype": "svcs.CNAME",
        "description": "Maps an alias to another (canonical) domain.",
        "family": "",
        "categories": [
            "alias"
        ],
        "record_types": [
            5
        ],
        "restrictions": {
            "alone": true,
            "needTypes": [
                5
            ],
            "single": true
        }
    },
    "svcs.DKIMRecord": {
        "name": "DKIM",
        "_svctype": "svcs.DKIMRecord",
        "description": "DomainKeys Identified Mail, authenticate outgoing emails.",
        "family": "",
        "categories": [
            "email"
        ],
        "record_types": [
            16
        ],
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                16
            ]
        }
    },
    "svcs.DKIMRedirection": {
        "name": "DKIM external",
        "_svctype": "svcs.DKIMRedirection",
        "description": "DKIM record redirected to another resource.",
        "family": "",
        "categories": [
            "email"
        ],
        "record_types": [
            5
        ],
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                5
            ]
        }
    },
    "svcs.DMARC": {
        "name": "DMARC",
        "_svctype": "svcs.DMARC",
        "description": "Domain-based Message Authentication, Reporting and Conformance.",
        "family": "",
        "categories": [
            "email"
        ],
        "record_types": [
            16
        ],
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                16
            ]
        }
    },
    "svcs.MTA_STS": {
        "name": "MTA-STS",
        "_svctype": "svcs.MTA_STS",
        "description": "SMTP MTA Strict Transport Security.",
        "family": "",
        "categories": [
            "email"
        ],
        "record_types": [
            16
        ],
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                16
            ]
        }
    },
    "svcs.MXs": {
        "name": "E-Mail servers",
        "_svctype": "svcs.MXs",
        "description": "Receives e-mail with this domain.",
        "family": "",
        "categories": [
            "email"
        ],
        "record_types": [
            15
        ],
        "restrictions": {
            "needTypes": [
                15
            ],
            "single": true
        }
    },
    "svcs.NAPTR": {
        "name": "Naming Authority Pointer",
        "_svctype": "svcs.NAPTR",
        "description": "",
        "family": "",
        "categories": [
            "telephony"
        ],
        "record_types": [
            35
        ],
        "restrictions": {
            "needTypes": [
                35
            ]
        }
    },
    "svcs.Orphan": {
        "name": "Orphan Record",
        "_svctype": "svcs.Orphan",
        "description": "A record not yet handled by happyDomain. Ask us to support it.",
        "family": "",
        "categories": [],
        "record_types": null,
        "restrictions": {}
    },
    "svcs.PTR": {
        "name": "Pointer",
        "_svctype": "svcs.PTR",
        "description": "A pointer to another domain.",
        "family": "",
        "categories": [
            "domain name"
        ],
        "record_types": [
            12
        ],
        "restrictions": {
            "alone": true,
            "needTypes": [
                12
            ],
            "single": true
        }
    },
    "svcs.SPF": {
        "name": "SPF",
        "_svctype": "svcs.SPF",
        "description": "Sender Policy Framework, to authenticate domain name on email sending.",
        "family": "",
        "categories": [
            "email"
        ],
        "record_types": [
            16,
            99
        ],
        "restrictions": {
            "needTypes": [
                16
            ]
        }
    },
    "svcs.SSHFPs": {
        "name": "SSHFP",
        "_svctype": "svcs.SSHFPs",
        "description": "Store SSH key fingerprints in DNS.",
        "family": "",
        "categories": [
            "security"
        ],
        "record_types": [
            44
        ],
        "restrictions": {
            "needTypes": [
                44
            ]
        }
    },
    "svcs.SpecialCNAME": {
        "name": "SubAlias",
        "_svctype": "svcs.SpecialCNAME",
        "description": "A service alias to another domain/service.",
        "family": "",
        "categories": [
            "alias"
        ],
        "record_types": null,
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                5
            ]
        }
    },
    "svcs.TLSAs": {
        "name": "TLSA records",
        "_svctype": "svcs.TLSAs",
        "description": "Publish TLS certificates exposed by your services.",
        "family": "",
        "categories": [
            "security"
        ],
        "record_types": [
            52
        ],
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                52
            ],
            "single": true
        }
    },
    "svcs.TLS_RPT": {
        "name": "TLS-RPT",
        "_svctype": "svcs.TLS_RPT",
        "description": "SMTP TLS Reporting.",
        "family": "",
        "categories": [
            "email"
        ],
        "record_types": [
            16
        ],
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                16
            ]
        }
    },
    "svcs.TXT": {
        "name": "Text Record",
        "_svctype": "svcs.TXT",
        "description": "Publishes a text string in your zone.",
        "family": "",
        "categories": null,
        "record_types": [
            16
        ],
        "restrictions": {
            "needTypes": [
                16
            ]
        }
    },
    "svcs.UnknownSRV": {
        "name": "Service Record",
        "_svctype": "svcs.UnknownSRV",
        "description": "Indicates to dedicated software the existance of the given service in the domain.",
        "family": "",
        "categories": [
            "service"
        ],
        "record_types": [
            33
        ],
        "restrictions": {
            "nearAlone": true,
            "needTypes": [
                33
            ]
        }
    }
}
