diff --git a/_dist/schema/bundle.json b/_dist/schema/bundle.json index 7b05e15..9c094e8 100644 --- a/_dist/schema/bundle.json +++ b/_dist/schema/bundle.json @@ -1 +1 @@ -{"type":"object","properties":{"license":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"license"},"ID":{"type":"string","pattern":"^[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]$","description":"The license's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.","markdownDescription":"The license's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"An abbreviation or other shortening of the license's `name` for display purposes.","markdownDescription":"An abbreviation or other shortening of the license's `name` for display purposes."},"short":{"type":"string","minLength":1,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the license's name","markdownDescription":"An object representing the license's name"},"data":{"type":"object","properties":{"entries":{"type":"array","items":{"anyOf":[{"type":"string","minLength":1,"description":"A single paragraph that accepts in-line formatting via `@tag`s.","markdownDescription":"A single paragraph that accepts in-line formatting via `@tag`s."},{"type":"object","properties":{"type":{"type":"string","minLength":1}},"required":["type"],"additionalProperties":true}]},"minItems":1,"description":"The full text of the license. Formatting may be used where it doesn't detract from its interpretation.","markdownDescription":"The full text of the license. Formatting may be used where it doesn't detract from its interpretation."}},"required":["entries"],"additionalProperties":false}},"required":["type","ID","title","data"],"additionalProperties":false},"minItems":1},"source":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"source"},"ID":{"$ref":"#/properties/license/items/properties/ID","description":"The source's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.\n\nFor multi-part adventures, the standard is to use \"0\" for the player's guide (if any), and then \"#\" for each part, where \"#\" is the part's number.","markdownDescription":"The source's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.\n\nFor multi-part adventures, the standard is to use \"0\" for the player's guide (if any), and then \"#\" for each part, where \"#\" is the part's number."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"The source's full, human-readable name. Title case is preferred but anything can be used within reason.","markdownDescription":"The source's full, human-readable name. Title case is preferred but anything can be used within reason."},"short":{"type":"string","minLength":1,"maxLength":8,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the source's name","markdownDescription":"An object representing the source's name"},"data":{"type":"object","properties":{"released":{"type":"string","format":"date","description":"The source's publication date (YYYY-MM-DD). For content with a staggered release or early-access program, use the date the source was first made publicly available.","markdownDescription":"The source's publication date (YYYY-MM-DD). For content with a staggered release or early-access program, use the date the source was first made publicly available."},"version":{"type":"string","minLength":1,"description":"The target version for the converted data (if any). This value serves akin to a `specifier` in case multiple distinct versions of the same source are maintained. Leave undefined if there has only ever been one version. (Examples: \"2nd Printing\", \"v1.2\", \"Revised 2025\")","markdownDescription":"The target version for the converted data (if any). This value serves akin to a `specifier` in case multiple distinct versions of the same source are maintained. Leave undefined if there has only ever been one version. (Examples: \"2nd Printing\", \"v1.2\", \"Revised 2025\")"},"errataed":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) of the source's most recent errata applied to Pf2ools' content. Leave undefined if the source has never been errataed.","markdownDescription":"The date (YYYY-MM-DD) of the source's most recent errata applied to Pf2ools' content. Leave undefined if the source has never been errataed."},"added":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) the source was first made available on the Pf2ools ecosystem (complete or otherwise).","markdownDescription":"The date (YYYY-MM-DD) the source was first made available on the Pf2ools ecosystem (complete or otherwise)."},"modified":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) the source's content-data as maintained by the Pf2ools project was last modified.","markdownDescription":"The date (YYYY-MM-DD) the source's content-data as maintained by the Pf2ools project was last modified."},"URL":{"type":"string","format":"uri","description":"A website on which the content can be legally and publicly viewed, downloaded, or purchased. A first-party website (i.e. one controlled by the authors) is preferred. If the Pf2ools source is the authoritative version for distribution, you can use \"https://github.com/pf2ools/pf2ools-data\".","markdownDescription":"A website on which the content can be legally and publicly viewed, downloaded, or purchased. A first-party website (i.e. one controlled by the authors) is preferred. If the Pf2ools source is the authoritative version for distribution, you can use \"https://github.com/pf2ools/pf2ools-data\"."},"groupIDs":{"type":"array","items":{"$ref":"#/properties/license/items/properties/ID","description":"The `ID` of a source group.","markdownDescription":"The `ID` of a source group."},"minItems":1,"description":"A list of `ID`s of the source's parent groups (if any). This is used for a source that is part of a larger, clearly defined, multi-part series. For instance, \"Extinction Curse #1: The Show Must Go On\" belongs to the \"Extinction Curse\" series (\"EC\"), and \"Lost Omens: Travel Guide\" belongs to the \"Lost Omens\" series (\"LO\").","markdownDescription":"A list of `ID`s of the source's parent groups (if any). This is used for a source that is part of a larger, clearly defined, multi-part series. For instance, \"Extinction Curse #1: The Show Must Go On\" belongs to the \"Extinction Curse\" series (\"EC\"), and \"Lost Omens: Travel Guide\" belongs to the \"Lost Omens\" series (\"LO\")."},"requiredSourceIDs":{"type":"array","items":{"$ref":"#/properties/license/items/properties/ID","description":"The `ID` of the dependent homebrew source.","markdownDescription":"The `ID` of the dependent homebrew source."},"minItems":1,"description":"A list of `ID`s of other homebrew sources that this source requires. The requirement is strict: a source that adds a subclass to another, external homebrew class would list that class' source `ID`.","markdownDescription":"A list of `ID`s of other homebrew sources that this source requires. The requirement is strict: a source that adds a subclass to another, external homebrew class would list that class' source `ID`."},"licenseID":{"$ref":"#/properties/license/items/properties/ID","description":"The `ID` of the source's license.","markdownDescription":"The `ID` of the source's license."},"copyright":{"type":"array","items":{"$ref":"#/properties/license/items/properties/data/properties/entries/items"},"minItems":1,"description":"Any additional copyright text associated with the source. For instance, the copyright notice that accompanies the OGLv1.0a license would be entered here (but not the license itself), as does the ORC license's attribution notice. Formatting may be used where it doesn't detract from its interpretation.","markdownDescription":"Any additional copyright text associated with the source. For instance, the copyright notice that accompanies the OGLv1.0a license would be entered here (but not the license itself), as does the ORC license's attribution notice. Formatting may be used where it doesn't detract from its interpretation."},"authors":{"type":"array","items":{"type":"string","description":"An author's name. Online handles should be reasonably indicated (e.g. \"Twitter: @ThatVauxs\", \"Discord: @spap\").","markdownDescription":"An author's name. Online handles should be reasonably indicated (e.g. \"Twitter: @ThatVauxs\", \"Discord: @spap\")."},"minItems":1,"description":"A list of unique authors as credited by the source itself.","markdownDescription":"A list of unique authors as credited by the source itself."},"publisher":{"type":"string","minLength":2,"description":"The name of the source's publishing company or group (e.g. \"Paizo\" or \"Roll for Combat\", but not a general marketplace like \"Pathfinder Infinite\").","markdownDescription":"The name of the source's publishing company or group (e.g. \"Paizo\" or \"Roll for Combat\", but not a general marketplace like \"Pathfinder Infinite\")."},"converters":{"type":"array","items":{"type":"string","minLength":2,"description":"A converter's name. Discord usernames are strongly preferred; other online handles should be reasonably indicated.","markdownDescription":"A converter's name. Discord usernames are strongly preferred; other online handles should be reasonably indicated."},"minItems":1,"description":"A list of unique Pf2ools contributors who converted this source. If multiple converters exist, choose one 'principal' to go first in the case of questions or bug reports. This is particularly used for homebrew, both for attributing work done and to help organise updates.","markdownDescription":"A list of unique Pf2ools contributors who converted this source. If multiple converters exist, choose one 'principal' to go first in the case of questions or bug reports. This is particularly used for homebrew, both for attributing work done and to help organise updates."}},"required":["released","added","modified","URL","licenseID"],"additionalProperties":false},"tags":{"type":"object","properties":{"publicationType":{"type":"object","properties":{"Comic":{"type":"boolean","const":true,"description":"The source is content bundled with a comic.","markdownDescription":"The source is content bundled with a comic."},"Blog post":{"type":"boolean","const":true,"description":"The source is a blog post or another similar type of short, online article.","markdownDescription":"The source is a blog post or another similar type of short, online article."}},"additionalProperties":false,"description":"An object representing the type of publication the source can be categorised as. This is most relevant when the game content is bundled along with something that isn't a typical Pathfinder rulebook.","markdownDescription":"An object representing the type of publication the source can be categorised as. This is most relevant when the game content is bundled along with something that isn't a typical Pathfinder rulebook."},"status":{"type":"object","properties":{"Missing content":{"type":"boolean","const":true,"description":"This source is only partially converted right now (i.e. it lacks some content), but, one day, it could be completely up-to-date.","markdownDescription":"This source is only partially converted right now (i.e. it lacks some content), but, one day, it could be completely up-to-date."},"Missing tags":{"type":"boolean","const":true,"description":"The converted content this source contains isn't completely tagged, even if it all displays correctly.","markdownDescription":"The converted content this source contains isn't completely tagged, even if it all displays correctly."},"Invalid":{"type":"boolean","const":true,"description":"This source's data is invalid and either contains serious schema errors or is generally malformed. It exists for archival purposes only and is unmaintained.","markdownDescription":"This source's data is invalid and either contains serious schema errors or is generally malformed. It exists for archival purposes only and is unmaintained."}},"additionalProperties":false},"misc":{"type":"object","properties":{"legacyRuleset":{"type":"boolean","const":true,"description":"This source targets the original Pathfinder 2e ruleset, as published in the Core Rulebook (2019), and not as published in Player Core (2023).","markdownDescription":"This source targets the original Pathfinder 2e ruleset, as published in the Core Rulebook (2019), and not as published in Player Core (2023)."},"Official":{"type":"boolean","const":true,"description":"This source was created and published by Paizo as 'official' Pathfinder 2e content (that is, it's official insofar that something can be 'official').","markdownDescription":"This source was created and published by Paizo as 'official' Pathfinder 2e content (that is, it's official insofar that something can be 'official')."},"GM-facing":{"type":"boolean","const":true,"description":"This source is intended to be GM-facing, to the exclusion of players. This is typically due to it being an adventure, module, one-shot, scenario, or the like.","markdownDescription":"This source is intended to be GM-facing, to the exclusion of players. This is typically due to it being an adventure, module, one-shot, scenario, or the like."},"PFS-legal":{"type":"boolean","const":true,"description":"This source is legal for Pathfinder Society play.","markdownDescription":"This source is legal for Pathfinder Society play."},"Playtest":{"type":"boolean","const":true,"description":"This source contains playtest, early-access, or otherwise 'unfinished' content.","markdownDescription":"This source contains playtest, early-access, or otherwise 'unfinished' content."},"Ongoing":{"type":"boolean","const":true,"description":"This source is being continually expanded. The data only reflects content only up until the `errataed` date. This is used for 'monster a day' projects and the like, where the conversion may entail a substantial lag behind the publication.","markdownDescription":"This source is being continually expanded. The data only reflects content only up until the `errataed` date. This is used for 'monster a day' projects and the like, where the conversion may entail a substantial lag behind the publication."},"Deprecated":{"type":"boolean","const":true,"description":"This source has been wholly superseded by another version of the same content. This applies when a completely rewritten, revised version of the source exists; simple, minor modifications via errata do not.","markdownDescription":"This source has been wholly superseded by another version of the same content. This applies when a completely rewritten, revised version of the source exists; simple, minor modifications via errata do not."},"NSFW":{"type":"boolean","const":true,"description":"This source contains content of a particularly provocative, unsavoury, or otherwise adult-oriented nature.","markdownDescription":"This source contains content of a particularly provocative, unsavoury, or otherwise adult-oriented nature."}},"additionalProperties":false}},"additionalProperties":false,"description":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes.","markdownDescription":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes."}},"required":["type","ID","title","data"],"additionalProperties":false},"minItems":1},"sourceGroup":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"sourceGroup"},"ID":{"$ref":"#/properties/license/items/properties/ID","description":"The source group's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem (both sources and source groups).","markdownDescription":"The source group's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem (both sources and source groups)."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"The source group's full, human-readable name. Title case is preferred but anything can be used within reason.","markdownDescription":"The source group's full, human-readable name. Title case is preferred but anything can be used within reason."},"short":{"type":"string","minLength":1,"maxLength":8,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the source group's name","markdownDescription":"An object representing the source group's name"},"data":{"type":"object","properties":{"publisher":{"type":"string","minLength":2,"description":"The name of the original, first-party publisher of the source group. Sources with publishers not matching this value are considered 'third-party' contributors to the source group.","markdownDescription":"The name of the original, first-party publisher of the source group. Sources with publishers not matching this value are considered 'third-party' contributors to the source group."}},"required":["publisher"],"additionalProperties":false},"tags":{"type":"object","properties":{"misc":{"type":"object","properties":{"Adventure":{"type":"boolean","const":true,"description":"This source group is an adventure path or the like.","markdownDescription":"This source group is an adventure path or the like."},"Ongoing":{"type":"boolean","const":true,"description":"This source group is being continually expanded. Not all member-sources may exist on Pf2ools.","markdownDescription":"This source group is being continually expanded. Not all member-sources may exist on Pf2ools."}},"additionalProperties":false}},"required":["misc"],"additionalProperties":false,"description":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes.","markdownDescription":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes."}},"required":["type","ID","title"],"additionalProperties":false,"description":"A `sourceGroup` object defines the existence of a group of sources. Tautology aside, this is used to describe adventure paths, book series, and the like.","markdownDescription":"A `sourceGroup` object defines the existence of a group of sources. Tautology aside, this is used to describe adventure paths, book series, and the like."},"minItems":1},"background":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"background"},"name":{"type":"object","properties":{"primary":{"type":"string","minLength":1,"description":"The full name of the statblock or header, exactly as it appears in the source. The only exception is when the source uses stylistic all-caps or no-caps, in which case you should use your judgement and possibly convert it to title-case.","markdownDescription":"The full name of the statblock or header, exactly as it appears in the source. The only exception is when the source uses stylistic all-caps or no-caps, in which case you should use your judgement and possibly convert it to title-case."},"aliases":{"type":"array","items":{"type":"string","minLength":1,"description":"An alternative name for the content.","markdownDescription":"An alternative name for the content."},"minItems":1,"description":"An array of alternative names of an entity. Some entities have multiple common names, whether defined in the statblock itself or the surrounding text. Alternative names may also be provided to ease searching, sorting, and filtering with common mistakes (e.g. calling the Aid action \"Help\").","markdownDescription":"An array of alternative names of an entity. Some entities have multiple common names, whether defined in the statblock itself or the surrounding text. Alternative names may also be provided to ease searching, sorting, and filtering with common mistakes (e.g. calling the Aid action \"Help\")."},"specifier":{"type":"string","minLength":1,"description":"A string to meaningfully disambiguate identically named entities (by necessity if they're from the same source). This often occurs, for example, with feats common to multiple classes (e.g. \"Attack of Opportunity\"). It can also occur when one entity in the source effectively defines multiple entities in data, each of which need to be disambiguated.","markdownDescription":"A string to meaningfully disambiguate identically named entities (by necessity if they're from the same source). This often occurs, for example, with feats common to multiple classes (e.g. \"Attack of Opportunity\"). It can also occur when one entity in the source effectively defines multiple entities in data, each of which need to be disambiguated."}},"required":["primary"],"additionalProperties":false},"source":{"type":"object","properties":{"ID":{"$ref":"#/properties/license/items/properties/ID","description":"The source ID that contains the data.","markdownDescription":"The source ID that contains the data."},"page":{"type":"integer","description":"The page number (if any) on which the content begins.","markdownDescription":"The page number (if any) on which the content begins."}},"required":["ID"],"additionalProperties":false},"data":{"type":"object","properties":{"traits":{"type":"array","items":{"type":"object","properties":{"trait":{"type":"string","minLength":1,"pattern":"^[a-z]","description":"The bare, keyworded name of the trait (e.g. the \"versatile\" in \"versatile P\").","markdownDescription":"The bare, keyworded name of the trait (e.g. the \"versatile\" in \"versatile P\")."},"variables":{"type":"array","items":{"type":"string","minLength":1},"minItems":1,"description":"The variable elements of a trait in an array.","markdownDescription":"The variable elements of a trait in an array."},"display":{"type":"string","minLength":1,"description":"How the trait should display, if it cannot be trivially inferred from `trait` and `variables`. (Example: \"modular (P and grapple, or S and sweep)\".)","markdownDescription":"How the trait should display, if it cannot be trivially inferred from `trait` and `variables`. (Example: \"modular (P and grapple, or S and sweep)\".)"}},"required":["trait"],"additionalProperties":false,"description":"A trait with both keyword and variable elements.","markdownDescription":"A trait with both keyword and variable elements."},"minItems":1,"description":"An array of objects representing a list of traits.","markdownDescription":"An array of objects representing a list of traits."},"entries":{"type":"array","items":{"$ref":"#/properties/license/items/properties/data/properties/entries/items"},"minItems":1}},"required":["entries"],"additionalProperties":false},"reference":{"type":"object","properties":{"type":{"type":"string","enum":["reprint","variant","replacement","extension"],"description":"`reprint`: The statblock is (near) identical to another one, and is intended to be as such.\n`variant`: The statblock is dependent on but distinct to the target (e.g. unique NPCs based on generic monsters).\n`replacement`: The statblock replaces the target entirely everywhere.\n`extension`: The statblock adds additional content to the target but doesn't supersede it (e.g. a new option added to a spell).","markdownDescription":"`reprint`: The statblock is (near) identical to another one, and is intended to be as such.\n`variant`: The statblock is dependent on but distinct to the target (e.g. unique NPCs based on generic monsters).\n`replacement`: The statblock replaces the target entirely everywhere.\n`extension`: The statblock adds additional content to the target but doesn't supersede it (e.g. a new option added to a spell)."},"target":{"type":"object","properties":{"name":{"type":"string","minLength":1},"specifier":{"type":"string","minLength":1},"sourceID":{"$ref":"#/properties/license/items/properties/ID"}},"required":["name","sourceID"],"additionalProperties":false,"description":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell).","markdownDescription":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell)."},"modifications":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","minLength":1,"description":"The type of modification being applied.","markdownDescription":"The type of modification being applied."},"target":{"type":"object","properties":{"property":{"type":"string","pattern":"^\\w+(?:\\.\\w+)+&","description":"A dot-separated hierarchy of properties leading to the target from the top-level `data` (e.g. \"castingTime.unit\").","markdownDescription":"A dot-separated hierarchy of properties leading to the target from the top-level `data` (e.g. \"castingTime.unit\")."},"name":{"type":"string","minLength":1,"description":"The `name` of the target object, if it is found in an array. This typically refers to arrays of `entryObject`s.","markdownDescription":"The `name` of the target object, if it is found in an array. This typically refers to arrays of `entryObject`s."}},"required":["property"],"additionalProperties":true},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"object","properties":{},"additionalProperties":true},{"type":"array"},{"type":"boolean"}],"description":"The modification value.","markdownDescription":"The modification value."}},"required":["type","target"],"additionalProperties":true,"description":"A single modification step.","markdownDescription":"A single modification step."},"minItems":1,"description":"An array of changes which, when applied consecutively, transforms the target content into the referring content.","markdownDescription":"An array of changes which, when applied consecutively, transforms the target content into the referring content."}},"required":["type","target"],"additionalProperties":false,"description":"An explicit reference to some other content, possibly with modifications applied on top. The referenced content's type is always assumed to be the same as the referring content.","markdownDescription":"An explicit reference to some other content, possibly with modifications applied on top. The referenced content's type is always assumed to be the same as the referring content."},"tags":{"type":"object","properties":{"abilityBoosts":{"type":"object","properties":{"abilities":{"type":"object","additionalProperties":{"type":"boolean","const":true},"description":"An object containing the types of boost that the background can grant.","markdownDescription":"An object containing the types of boost that the background can grant."},"count":{"type":"integer","minimum":1,"maximum":3,"description":"The total number of boosts the background can grant.","markdownDescription":"The total number of boosts the background can grant."}},"required":["abilities","count"],"additionalProperties":false,"description":"The ability boosts the background grants.","markdownDescription":"The ability boosts the background grants."},"trainedSkills":{"type":"object","properties":{"skills":{"type":"object","additionalProperties":{"type":"boolean","const":true},"description":"A list of skills in which the background can grant proficiency.","markdownDescription":"A list of skills in which the background can grant proficiency."},"count":{"type":"integer","minimum":1,"maximum":4,"description":"The total number of distinct skill proficiencies the background can grant.","markdownDescription":"The total number of distinct skill proficiencies the background can grant."}},"required":["skills","count"],"additionalProperties":false,"description":"The skills in which the background can grant proficiency.","markdownDescription":"The skills in which the background can grant proficiency."},"gainedFeats":{"type":"object","properties":{"options":{"type":"array","items":{"$ref":"#/properties/background/items/properties/reference/properties/target"},"minItems":1,"description":"A list of feats the background can grant.","markdownDescription":"A list of feats the background can grant."},"count":{"type":"integer","minimum":1,"maximum":2,"description":"The total number of feats the background can grant.","markdownDescription":"The total number of feats the background can grant."}},"required":["options","count"],"additionalProperties":false,"description":"The feats the background grants.","markdownDescription":"The feats the background grants."},"gainedSpells":{"type":"object","properties":{"options":{"type":"array","items":{"$ref":"#/properties/background/items/properties/reference/properties/target"},"minItems":1,"description":"A list of spells the background can grant.","markdownDescription":"A list of spells the background can grant."},"count":{"type":"integer","minimum":1,"maximum":2,"description":"The total number of feats the background can grant.","markdownDescription":"The total number of feats the background can grant."}},"required":["options","count"],"additionalProperties":false,"description":"The spells the background grants.","markdownDescription":"The spells the background grants."},"misc":{"type":"object","properties":{"Grants ability":{"type":"boolean","const":true,"description":"The background background grants an active, voluntary ability.","markdownDescription":"The background background grants an active, voluntary ability."},"Grants equipment":{"type":"boolean","const":true,"description":"The background grants a free item (not just access or proficiency—the actual concrete thing).","markdownDescription":"The background grants a free item (not just access or proficiency—the actual concrete thing)."},"Grants language":{"type":"boolean","const":true,"description":"The background grants a language.","markdownDescription":"The background grants a language."},"Grants resistance":{"type":"boolean","const":true,"description":"The background grants a damage resistance.","markdownDescription":"The background grants a damage resistance."},"Grants sense":{"type":"boolean","const":true,"description":"The background grants a sense (e.g. darkvision, scent).","markdownDescription":"The background grants a sense (e.g. darkvision, scent)."},"Grants situational benefit":{"type":"boolean","const":true,"description":"The background grants a passive benefit that isn't otherwise categorisable. For example, this would apply if the background grants a +1 circumstance bonus to Seek on cloudy days.","markdownDescription":"The background grants a passive benefit that isn't otherwise categorisable. For example, this would apply if the background grants a +1 circumstance bonus to Seek on cloudy days."},"Has drawback":{"type":"boolean","const":true,"description":"The background comes with an objective, mandatory drawback, such as a penalty to some check or the inability to use an item or spell; not something that is both good and bad.","markdownDescription":"The background comes with an objective, mandatory drawback, such as a penalty to some check or the inability to use an item or spell; not something that is both good and bad."},"GM influence":{"type":"boolean","const":true,"description":"The GM determines some mechanical aspect of the background. For instance, this would apply if the background specifies that the GM alone chooses one of the boosts or the type of Lore skill it grants.","markdownDescription":"The GM determines some mechanical aspect of the background. For instance, this would apply if the background specifies that the GM alone chooses one of the boosts or the type of Lore skill it grants."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["type","name","source","data"],"additionalProperties":false},"minItems":1},"condition":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"condition"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"entries":{"$ref":"#/properties/background/items/properties/data/properties/entries"}},"required":["entries"],"additionalProperties":false},"reference":{"$ref":"#/properties/background/items/properties/reference"},"tags":{"type":"object","properties":{"group":{"type":"object","properties":{"Attitudes":{"type":"boolean","const":true,"description":"The condition is in the 'Attitudes' group (CRB p619).","markdownDescription":"The condition is in the 'Attitudes' group (CRB p619)."},"Death and Dying":{"type":"boolean","const":true,"description":"The condition is in the 'Death and Dying' group (CRB p619).","markdownDescription":"The condition is in the 'Death and Dying' group (CRB p619)."},"Degrees of Detection":{"type":"boolean","const":true,"description":"The condition is in the 'Degrees of Detection' group (CRB p619).","markdownDescription":"The condition is in the 'Degrees of Detection' group (CRB p619)."},"Lowered Abilities":{"type":"boolean","const":true,"description":"The condition is in the 'Lowered Abilities' group (CRB p619).","markdownDescription":"The condition is in the 'Lowered Abilities' group (CRB p619)."},"Senses":{"type":"boolean","const":true,"description":"The condition is in the 'Senses' group (CRB p619).","markdownDescription":"The condition is in the 'Senses' group (CRB p619)."}},"additionalProperties":{"type":"boolean","const":true},"description":"An object containing any groups the condition belongs to. The properties should be in title case.","markdownDescription":"An object containing any groups the condition belongs to. The properties should be in title case."}},"additionalProperties":false}},"required":["type","name","source","data"],"additionalProperties":false},"minItems":1},"divineIntercession":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"divineIntercession"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"deity":{"type":"object","properties":{"name":{"$ref":"#/properties/background/items/properties/reference/properties/target/properties/name"},"specifier":{"$ref":"#/properties/background/items/properties/reference/properties/target/properties/specifier"},"sourceID":{"$ref":"#/properties/background/items/properties/reference/properties/target/properties/sourceID"}},"required":["name","sourceID"],"additionalProperties":false,"description":"The deity whose intercessions are being described.","markdownDescription":"The deity whose intercessions are being described."},"preamble":{"type":"array","items":{"$ref":"#/properties/license/items/properties/data/properties/entries/items"},"minItems":1,"description":"The flavour text or GM guidance that precedes the boons/curses themselves.","markdownDescription":"The flavour text or GM guidance that precedes the boons/curses themselves."},"Minor Boon":{"$ref":"#/properties/background/items/properties/data/properties/entries"},"Moderate Boon":{"$ref":"#/properties/background/items/properties/data/properties/entries"},"Major Boon":{"$ref":"#/properties/background/items/properties/data/properties/entries"},"Minor Curse":{"$ref":"#/properties/background/items/properties/data/properties/entries"},"Moderate Curse":{"$ref":"#/properties/background/items/properties/data/properties/entries"},"Major Curse":{"$ref":"#/properties/background/items/properties/data/properties/entries"}},"required":["deity"],"additionalProperties":false},"reference":{"$ref":"#/properties/background/items/properties/reference"},"tags":{"type":"object","properties":{},"additionalProperties":true,"description":"An object describing the content for filtering, searching, and sorting.","markdownDescription":"An object describing the content for filtering, searching, and sorting."}},"required":["type","name","source","data"],"additionalProperties":false},"minItems":1},"domain":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"domain"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"preamble":{"type":"string","minLength":1,"description":"The typically brief sentence or two of flavour text that describes the domain or otherwise provides guidance on its use.","markdownDescription":"The typically brief sentence or two of flavour text that describes the domain or otherwise provides guidance on its use."},"domainSpell":{"$ref":"#/properties/background/items/properties/reference/properties/target"},"advancedDomainSpell":{"$ref":"#/properties/background/items/properties/reference/properties/target"},"apocryphalSpell":{"$ref":"#/properties/background/items/properties/reference/properties/target","description":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell).","markdownDescription":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell)."},"advancedApocryphalSpell":{"$ref":"#/properties/background/items/properties/reference/properties/target","description":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell).","markdownDescription":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell)."}},"required":["domainSpell","advancedDomainSpell"],"additionalProperties":false},"reference":{"$ref":"#/properties/background/items/properties/reference"},"tags":{"$ref":"#/properties/divineIntercession/items/properties/tags"}},"required":["type","name","source","data"],"additionalProperties":false},"minItems":1},"event":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"event"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"level":{"type":"integer","minimum":-1,"description":"The event's level","markdownDescription":"The event's level"},"traits":{"$ref":"#/properties/background/items/properties/data/properties/traits"},"applicableSkills":{"type":"array","items":{"type":"object","properties":{"skill":{"type":"string","enum":["Acrobatics","Arcana","Athletics","Crafting","Deception","Diplomacy","Intimidation","Lore","Medicine","Nature","Occultism","Performance","Religion","Society","Stealth","Survival","Thievery"],"description":"The name of the skill (title case).","markdownDescription":"The name of the skill (title case)."},"variables":{"type":"array","items":{"type":"string","minLength":1,"pattern":"^[A-Z]"},"minItems":1,"description":"A skill's variable element (e.g. \"Accounting\" and \"Midwifery\" in \"Accounting or Midwifery Lore\").","markdownDescription":"A skill's variable element (e.g. \"Accounting\" and \"Midwifery\" in \"Accounting or Midwifery Lore\")."},"display":{"type":"string","minLength":1,"description":"How the skill should display, if it cannot be trivially inferred from `skill` and `variables`. (Example: \"Accounting and Midwifery Lore\".)","markdownDescription":"How the skill should display, if it cannot be trivially inferred from `skill` and `variables`. (Example: \"Accounting and Midwifery Lore\".)"}},"required":["skill"],"additionalProperties":false,"description":"A combined object to describe a type of skill referenced by other content.","markdownDescription":"A combined object to describe a type of skill referenced by other content."},"minItems":1,"description":"An array of objects representing the event's applicable skills.","markdownDescription":"An array of objects representing the event's applicable skills."},"entries":{"$ref":"#/properties/background/items/properties/data/properties/entries"}},"required":["level","entries"],"additionalProperties":false},"reference":{"$ref":"#/properties/background/items/properties/reference"},"tags":{"$ref":"#/properties/divineIntercession/items/properties/tags"}},"required":["type","name","source","data"],"additionalProperties":false},"minItems":1},"familiarAbility":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"familiarAbility"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"abilityType":{"type":"string","enum":["Familiar","Master"],"description":"The familiar ability's type.","markdownDescription":"The familiar ability's type."},"entries":{"$ref":"#/properties/background/items/properties/data/properties/entries"}},"required":["abilityType","entries"],"additionalProperties":false},"reference":{"$ref":"#/properties/background/items/properties/reference"},"tags":{"type":"object","properties":{"misc":{"type":"object","properties":{"affectsCommunication":{"type":"boolean","const":true,"description":"The ability affects the familiar's capacity to communicate (e.g. by granting it languages).","markdownDescription":"The ability affects the familiar's capacity to communicate (e.g. by granting it languages)."},"affectsSenses":{"type":"boolean","const":true,"description":"The ability affects the familiar's senses or grants a new sense (e.g. darkvision, scent).","markdownDescription":"The ability affects the familiar's senses or grants a new sense (e.g. darkvision, scent)."},"affectsMovement":{"type":"boolean","const":true,"description":"The ability affects the familiar's capacity to move or grants a new Speed.","markdownDescription":"The ability affects the familiar's capacity to move or grants a new Speed."},"hasRequirement":{"type":"boolean","const":true,"description":"You or the familiar must satisfy a certain requirement to choose this ability.","markdownDescription":"You or the familiar must satisfy a certain requirement to choose this ability."},"grantsAbility":{"type":"boolean","const":true,"description":"The ability grants you or the familiar an active, voluntary ability.","markdownDescription":"The ability grants you or the familiar an active, voluntary ability."},"repeatable":{"type":"boolean","const":true,"description":"You can select this ability multiple times.","markdownDescription":"You can select this ability multiple times."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["type","name","source","data"],"additionalProperties":false},"minItems":1},"relicGift":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"relicGift"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"tier":{"type":"string","minLength":1,"pattern":"^[A-Z]","description":"The relic gift's tier (title case)","markdownDescription":"The relic gift's tier (title case)"},"traits":{"$ref":"#/properties/background/items/properties/data/properties/traits"},"aspects":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"The aspect's name","markdownDescription":"The aspect's name"},"note":{"type":"string","minLength":1,"description":"A bracketed note qualifying the aspect (e.g. the \"azata-themed\" in \"celestial (azata-themed)\").","markdownDescription":"A bracketed note qualifying the aspect (e.g. the \"azata-themed\" in \"celestial (azata-themed)\")."}},"required":["name"],"additionalProperties":false}},"prerequisites":{"$ref":"#/properties/license/items/properties/data/properties/entries/items/anyOf/0","description":"A single paragraph that accepts in-line formatting via `@tag`s.","markdownDescription":"A single paragraph that accepts in-line formatting via `@tag`s."},"entries":{"$ref":"#/properties/background/items/properties/data/properties/entries"}},"required":["tier","aspects","entries"],"additionalProperties":false},"reference":{"$ref":"#/properties/background/items/properties/reference"},"tags":{"type":"object","properties":{"itemTypes":{"type":"object","properties":{"Armor":{"type":"boolean","const":true,"description":"The relic must be a piece or suit of armour to have this gift.","markdownDescription":"The relic must be a piece or suit of armour to have this gift."},"Worn Item":{"type":"boolean","const":true,"description":"The relic must be a worn item to have this gift.","markdownDescription":"The relic must be a worn item to have this gift."},"Weapon":{"type":"boolean","const":true,"description":"The relic must be a weapon to have this gift.","markdownDescription":"The relic must be a weapon to have this gift."}},"additionalProperties":{"type":"boolean","const":true},"description":"An object containing the types of item the relic must be in order to have this gift. The properties should be in title case.","markdownDescription":"An object containing the types of item the relic must be in order to have this gift. The properties should be in title case."},"misc":{"type":"object","properties":{"Alters relic":{"type":"boolean","const":true,"description":"The gift permanently changes the relic's nature in some way.","markdownDescription":"The gift permanently changes the relic's nature in some way."},"Grants ability":{"type":"boolean","const":true,"description":"The gift grants the character a new, activatable ability (including spells).","markdownDescription":"The gift grants the character a new, activatable ability (including spells)."},"Grants passive attribute":{"type":"boolean","const":true,"description":"The gift grants the character a new Speed, a damage resistance, an automatic bonus, or another always-active ability.","markdownDescription":"The gift grants the character a new Speed, a damage resistance, an automatic bonus, or another always-active ability."},"Is rune":{"type":"boolean","const":true,"description":"The gift mimics the effect of a rune.","markdownDescription":"The gift mimics the effect of a rune."},"Soul seed":{"type":"boolean","const":true,"description":"The gift is \"particularly appropriate\" for soul seeds (SoM p230).","markdownDescription":"The gift is \"particularly appropriate\" for soul seeds (SoM p230)."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["type","name","source","data"],"additionalProperties":false},"minItems":1},"skill":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"skill"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"entries":{"$ref":"#/properties/background/items/properties/data/properties/entries"}},"required":["entries"],"additionalProperties":false},"reference":{"$ref":"#/properties/background/items/properties/reference"},"tags":{"$ref":"#/properties/divineIntercession/items/properties/tags"}},"required":["type","name","source","data"],"additionalProperties":false},"minItems":1}},"required":["source"],"additionalProperties":true,"$schema":"http://json-schema.org/draft-07/schema#"} \ No newline at end of file +{"type":"object","properties":{"license":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"license"},"ID":{"type":"string","pattern":"^[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]$","description":"The license's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.","markdownDescription":"The license's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"An abbreviation or other shortening of the license's `name` for display purposes.","markdownDescription":"An abbreviation or other shortening of the license's `name` for display purposes."},"short":{"type":"string","minLength":1,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the license's name","markdownDescription":"An object representing the license's name"},"data":{"type":"object","properties":{"entries":{"type":"array","items":{"anyOf":[{"type":"string","minLength":1,"description":"A single paragraph that accepts in-line formatting via `@tag`s.","markdownDescription":"A single paragraph that accepts in-line formatting via `@tag`s."},{"type":"object","properties":{"type":{"type":"string","minLength":1}},"required":["type"],"additionalProperties":true}]},"minItems":1,"description":"The full text of the license. Formatting may be used where it doesn't detract from its interpretation.","markdownDescription":"The full text of the license. Formatting may be used where it doesn't detract from its interpretation."}},"required":["entries"],"additionalProperties":false}},"required":["type","ID","title","data"],"additionalProperties":false},"minItems":1},"source":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"source"},"ID":{"$ref":"#/properties/license/items/properties/ID","description":"The source's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.\n\nFor multi-part adventures, the standard is to use \"0\" for the player's guide (if any), and then \"#\" for each part, where \"#\" is the part's number.","markdownDescription":"The source's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.\n\nFor multi-part adventures, the standard is to use \"0\" for the player's guide (if any), and then \"#\" for each part, where \"#\" is the part's number."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"The source's full, human-readable name. Title case is preferred but anything can be used within reason.","markdownDescription":"The source's full, human-readable name. Title case is preferred but anything can be used within reason."},"short":{"type":"string","minLength":1,"maxLength":8,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the source's name","markdownDescription":"An object representing the source's name"},"data":{"type":"object","properties":{"released":{"type":"string","format":"date","description":"The source's publication date (YYYY-MM-DD). For content with a staggered release or early-access program, use the date the source was first made publicly available.","markdownDescription":"The source's publication date (YYYY-MM-DD). For content with a staggered release or early-access program, use the date the source was first made publicly available."},"version":{"type":"string","minLength":1,"description":"The target version for the converted data (if any). This value serves akin to a `specifier` in case multiple distinct versions of the same source are maintained. Leave undefined if there has only ever been one version. (Examples: \"2nd Printing\", \"v1.2\", \"Revised 2025\")","markdownDescription":"The target version for the converted data (if any). This value serves akin to a `specifier` in case multiple distinct versions of the same source are maintained. Leave undefined if there has only ever been one version. (Examples: \"2nd Printing\", \"v1.2\", \"Revised 2025\")"},"errataed":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) of the source's most recent errata applied to Pf2ools' content. Leave undefined if the source has never been errataed.","markdownDescription":"The date (YYYY-MM-DD) of the source's most recent errata applied to Pf2ools' content. Leave undefined if the source has never been errataed."},"added":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) the source was first made available on the Pf2ools ecosystem (complete or otherwise).","markdownDescription":"The date (YYYY-MM-DD) the source was first made available on the Pf2ools ecosystem (complete or otherwise)."},"modified":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) the source's content-data as maintained by the Pf2ools project was last modified.","markdownDescription":"The date (YYYY-MM-DD) the source's content-data as maintained by the Pf2ools project was last modified."},"URL":{"type":"string","format":"uri","description":"A website on which the content can be legally and publicly viewed, downloaded, or purchased. A first-party website (i.e. one controlled by the authors) is preferred. If the Pf2ools source is the authoritative version for distribution, you can use \"https://github.com/pf2ools/pf2ools-data\".","markdownDescription":"A website on which the content can be legally and publicly viewed, downloaded, or purchased. A first-party website (i.e. one controlled by the authors) is preferred. If the Pf2ools source is the authoritative version for distribution, you can use \"https://github.com/pf2ools/pf2ools-data\"."},"groupIDs":{"type":"array","items":{"$ref":"#/properties/license/items/properties/ID","description":"The `ID` of a source group.","markdownDescription":"The `ID` of a source group."},"minItems":1,"description":"A list of `ID`s of the source's parent groups (if any). This is used for a source that is part of a larger, clearly defined, multi-part series. For instance, \"Extinction Curse #1: The Show Must Go On\" belongs to the \"Extinction Curse\" series (\"EC\"), and \"Lost Omens: Travel Guide\" belongs to the \"Lost Omens\" series (\"LO\").","markdownDescription":"A list of `ID`s of the source's parent groups (if any). This is used for a source that is part of a larger, clearly defined, multi-part series. For instance, \"Extinction Curse #1: The Show Must Go On\" belongs to the \"Extinction Curse\" series (\"EC\"), and \"Lost Omens: Travel Guide\" belongs to the \"Lost Omens\" series (\"LO\")."},"requiredSourceIDs":{"type":"array","items":{"$ref":"#/properties/license/items/properties/ID","description":"The `ID` of the dependent homebrew source.","markdownDescription":"The `ID` of the dependent homebrew source."},"minItems":1,"description":"A list of `ID`s of other homebrew sources that this source requires. The requirement is strict: a source that adds a subclass to another, external homebrew class would list that class' source `ID`.","markdownDescription":"A list of `ID`s of other homebrew sources that this source requires. The requirement is strict: a source that adds a subclass to another, external homebrew class would list that class' source `ID`."},"licenseID":{"$ref":"#/properties/license/items/properties/ID","description":"The `ID` of the source's license.","markdownDescription":"The `ID` of the source's license."},"copyright":{"type":"array","items":{"$ref":"#/properties/license/items/properties/data/properties/entries/items"},"minItems":1,"description":"Any additional copyright text associated with the source. For instance, the copyright notice that accompanies the OGLv1.0a license would be entered here (but not the license itself), as does the ORC license's attribution notice. Formatting may be used where it doesn't detract from its interpretation.","markdownDescription":"Any additional copyright text associated with the source. For instance, the copyright notice that accompanies the OGLv1.0a license would be entered here (but not the license itself), as does the ORC license's attribution notice. Formatting may be used where it doesn't detract from its interpretation."},"authors":{"type":"array","items":{"type":"string","description":"An author's name. Online handles should be reasonably indicated (e.g. \"Twitter: @ThatVauxs\", \"Discord: @spap\").","markdownDescription":"An author's name. Online handles should be reasonably indicated (e.g. \"Twitter: @ThatVauxs\", \"Discord: @spap\")."},"minItems":1,"description":"A list of unique authors as credited by the source itself.","markdownDescription":"A list of unique authors as credited by the source itself."},"publisher":{"type":"string","minLength":2,"description":"The name of the source's publishing company or group (e.g. \"Paizo\" or \"Roll for Combat\", but not a general marketplace like \"Pathfinder Infinite\").","markdownDescription":"The name of the source's publishing company or group (e.g. \"Paizo\" or \"Roll for Combat\", but not a general marketplace like \"Pathfinder Infinite\")."},"converters":{"type":"array","items":{"type":"string","minLength":2,"description":"A converter's name. Discord usernames are strongly preferred; other online handles should be reasonably indicated.","markdownDescription":"A converter's name. Discord usernames are strongly preferred; other online handles should be reasonably indicated."},"minItems":1,"description":"A list of unique Pf2ools contributors who converted this source. If multiple converters exist, choose one 'principal' to go first in the case of questions or bug reports. This is particularly used for homebrew, both for attributing work done and to help organise updates.","markdownDescription":"A list of unique Pf2ools contributors who converted this source. If multiple converters exist, choose one 'principal' to go first in the case of questions or bug reports. This is particularly used for homebrew, both for attributing work done and to help organise updates."}},"required":["released","added","modified","URL","licenseID"],"additionalProperties":false},"_tags":{"type":"object","properties":{"publicationType":{"type":"object","properties":{"Comic":{"type":"boolean","const":true,"description":"The source is content bundled with a comic.","markdownDescription":"The source is content bundled with a comic."},"Blog post":{"type":"boolean","const":true,"description":"The source is a blog post or another similar type of short, online article.","markdownDescription":"The source is a blog post or another similar type of short, online article."}},"additionalProperties":false,"description":"An object representing the type of publication the source can be categorised as. This is most relevant when the game content is bundled along with something that isn't a typical Pathfinder rulebook.","markdownDescription":"An object representing the type of publication the source can be categorised as. This is most relevant when the game content is bundled along with something that isn't a typical Pathfinder rulebook."},"status":{"type":"object","properties":{"Missing content":{"type":"boolean","const":true,"description":"This source is only partially converted right now (i.e. it lacks some content), but, one day, it could be completely up-to-date.","markdownDescription":"This source is only partially converted right now (i.e. it lacks some content), but, one day, it could be completely up-to-date."},"Missing tags":{"type":"boolean","const":true,"description":"The converted content this source contains isn't completely tagged, even if it all displays correctly.","markdownDescription":"The converted content this source contains isn't completely tagged, even if it all displays correctly."},"Invalid":{"type":"boolean","const":true,"description":"This source's data is invalid and either contains serious schema errors or is generally malformed. It exists for archival purposes only and is unmaintained.","markdownDescription":"This source's data is invalid and either contains serious schema errors or is generally malformed. It exists for archival purposes only and is unmaintained."}},"additionalProperties":false},"misc":{"type":"object","properties":{"legacyRuleset":{"type":"boolean","const":true,"description":"This source targets the original Pathfinder 2e ruleset, as published in the Core Rulebook (2019), and not as published in Player Core (2023).","markdownDescription":"This source targets the original Pathfinder 2e ruleset, as published in the Core Rulebook (2019), and not as published in Player Core (2023)."},"Official":{"type":"boolean","const":true,"description":"This source was created and published by Paizo as 'official' Pathfinder 2e content (that is, it's official insofar that something can be 'official').","markdownDescription":"This source was created and published by Paizo as 'official' Pathfinder 2e content (that is, it's official insofar that something can be 'official')."},"GM-facing":{"type":"boolean","const":true,"description":"This source is intended to be GM-facing, to the exclusion of players. This is typically due to it being an adventure, module, one-shot, scenario, or the like.","markdownDescription":"This source is intended to be GM-facing, to the exclusion of players. This is typically due to it being an adventure, module, one-shot, scenario, or the like."},"PFS-legal":{"type":"boolean","const":true,"description":"This source is legal for Pathfinder Society play.","markdownDescription":"This source is legal for Pathfinder Society play."},"Playtest":{"type":"boolean","const":true,"description":"This source contains playtest, early-access, or otherwise 'unfinished' content.","markdownDescription":"This source contains playtest, early-access, or otherwise 'unfinished' content."},"Ongoing":{"type":"boolean","const":true,"description":"This source is being continually expanded. The data only reflects content only up until the `errataed` date. This is used for 'monster a day' projects and the like, where the conversion may entail a substantial lag behind the publication.","markdownDescription":"This source is being continually expanded. The data only reflects content only up until the `errataed` date. This is used for 'monster a day' projects and the like, where the conversion may entail a substantial lag behind the publication."},"Deprecated":{"type":"boolean","const":true,"description":"This source has been wholly superseded by another version of the same content. This applies when a completely rewritten, revised version of the source exists; simple, minor modifications via errata do not.","markdownDescription":"This source has been wholly superseded by another version of the same content. This applies when a completely rewritten, revised version of the source exists; simple, minor modifications via errata do not."},"NSFW":{"type":"boolean","const":true,"description":"This source contains content of a particularly provocative, unsavoury, or otherwise adult-oriented nature.","markdownDescription":"This source contains content of a particularly provocative, unsavoury, or otherwise adult-oriented nature."}},"additionalProperties":false}},"additionalProperties":false,"description":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes.","markdownDescription":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes."}},"required":["type","ID","title","data"],"additionalProperties":false},"minItems":1},"sourceGroup":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"sourceGroup"},"ID":{"$ref":"#/properties/license/items/properties/ID","description":"The source group's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem (both sources and source groups).","markdownDescription":"The source group's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem (both sources and source groups)."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"The source group's full, human-readable name. Title case is preferred but anything can be used within reason.","markdownDescription":"The source group's full, human-readable name. Title case is preferred but anything can be used within reason."},"short":{"type":"string","minLength":1,"maxLength":8,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the source group's name","markdownDescription":"An object representing the source group's name"},"data":{"type":"object","properties":{"publisher":{"type":"string","minLength":2,"description":"The name of the original, first-party publisher of the source group. Sources with publishers not matching this value are considered 'third-party' contributors to the source group.","markdownDescription":"The name of the original, first-party publisher of the source group. Sources with publishers not matching this value are considered 'third-party' contributors to the source group."}},"required":["publisher"],"additionalProperties":false},"_tags":{"type":"object","properties":{"misc":{"type":"object","properties":{"Adventure":{"type":"boolean","const":true,"description":"This source group is an adventure path or the like.","markdownDescription":"This source group is an adventure path or the like."},"Ongoing":{"type":"boolean","const":true,"description":"This source group is being continually expanded. Not all member-sources may exist on Pf2ools.","markdownDescription":"This source group is being continually expanded. Not all member-sources may exist on Pf2ools."}},"additionalProperties":false}},"required":["misc"],"additionalProperties":false,"description":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes.","markdownDescription":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes."}},"required":["type","ID","title"],"additionalProperties":false,"description":"A `sourceGroup` object defines the existence of a group of sources. Tautology aside, this is used to describe adventure paths, book series, and the like.","markdownDescription":"A `sourceGroup` object defines the existence of a group of sources. Tautology aside, this is used to describe adventure paths, book series, and the like."},"minItems":1},"background":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"background"},"name":{"type":"object","properties":{"primary":{"type":"string","minLength":1,"description":"The full name of the statblock or header, exactly as it appears in the source. The only exception is when the source uses stylistic all-caps or no-caps, in which case you should use your judgement and possibly convert it to title-case.","markdownDescription":"The full name of the statblock or header, exactly as it appears in the source. The only exception is when the source uses stylistic all-caps or no-caps, in which case you should use your judgement and possibly convert it to title-case."},"aliases":{"type":"array","items":{"type":"string","minLength":1,"description":"An alternative name for the content.","markdownDescription":"An alternative name for the content."},"minItems":1,"description":"An array of alternative names of an entity. Some entities have multiple common names, whether defined in the statblock itself or the surrounding text. Alternative names may also be provided to ease searching, sorting, and filtering with common mistakes (e.g. calling the Aid action \"Help\").","markdownDescription":"An array of alternative names of an entity. Some entities have multiple common names, whether defined in the statblock itself or the surrounding text. Alternative names may also be provided to ease searching, sorting, and filtering with common mistakes (e.g. calling the Aid action \"Help\")."},"specifier":{"type":"string","minLength":1,"description":"A string to meaningfully disambiguate identically named entities (by necessity if they're from the same source). This often occurs, for example, with feats common to multiple classes (e.g. \"Attack of Opportunity\"). It can also occur when one entity in the source effectively defines multiple entities in data, each of which need to be disambiguated.","markdownDescription":"A string to meaningfully disambiguate identically named entities (by necessity if they're from the same source). This often occurs, for example, with feats common to multiple classes (e.g. \"Attack of Opportunity\"). It can also occur when one entity in the source effectively defines multiple entities in data, each of which need to be disambiguated."}},"required":["primary"],"additionalProperties":false},"source":{"type":"object","properties":{"ID":{"$ref":"#/properties/license/items/properties/ID","description":"The source ID that contains the data.","markdownDescription":"The source ID that contains the data."},"page":{"type":"integer","description":"The page number (if any) on which the content begins.","markdownDescription":"The page number (if any) on which the content begins."}},"required":["ID"],"additionalProperties":false},"data":{"type":"object","properties":{"traits":{"type":"array","items":{"type":"object","properties":{"trait":{"type":"string","minLength":1,"pattern":"^[a-z]","description":"The bare, keyworded name of the trait (e.g. the \"versatile\" in \"versatile P\").","markdownDescription":"The bare, keyworded name of the trait (e.g. the \"versatile\" in \"versatile P\")."},"variables":{"type":"array","items":{"type":"string","minLength":1},"minItems":1,"description":"The variable elements of a trait in an array.","markdownDescription":"The variable elements of a trait in an array."},"display":{"type":"string","minLength":1,"description":"How the trait should display, if it cannot be trivially inferred from `trait` and `variables`. (Example: \"modular (P and grapple, or S and sweep)\".)","markdownDescription":"How the trait should display, if it cannot be trivially inferred from `trait` and `variables`. (Example: \"modular (P and grapple, or S and sweep)\".)"}},"required":["trait"],"additionalProperties":false,"description":"A trait with both keyword and variable elements.","markdownDescription":"A trait with both keyword and variable elements."},"minItems":1,"description":"An array of objects representing a list of traits.","markdownDescription":"An array of objects representing a list of traits."},"entries":{"type":"array","items":{"$ref":"#/properties/license/items/properties/data/properties/entries/items"},"minItems":1},"_tags":{"type":"object","properties":{"abilityBoosts":{"type":"object","properties":{"abilities":{"type":"object","additionalProperties":{"type":"boolean","const":true},"description":"An object containing the types of boost that the background can grant.","markdownDescription":"An object containing the types of boost that the background can grant."},"count":{"type":"integer","minimum":1,"maximum":3,"description":"The total number of boosts the background can grant.","markdownDescription":"The total number of boosts the background can grant."}},"required":["abilities","count"],"additionalProperties":false,"description":"The ability boosts the background grants.","markdownDescription":"The ability boosts the background grants."},"trainedSkills":{"type":"object","properties":{"skills":{"type":"object","additionalProperties":{"type":"boolean","const":true},"description":"A list of skills in which the background can grant proficiency.","markdownDescription":"A list of skills in which the background can grant proficiency."},"count":{"type":"integer","minimum":1,"maximum":4,"description":"The total number of distinct skill proficiencies the background can grant.","markdownDescription":"The total number of distinct skill proficiencies the background can grant."}},"required":["skills","count"],"additionalProperties":false,"description":"The skills in which the background can grant proficiency.","markdownDescription":"The skills in which the background can grant proficiency."},"gainedFeats":{"type":"object","properties":{"options":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1},"specifier":{"type":"string","minLength":1},"sourceID":{"$ref":"#/properties/license/items/properties/ID"}},"required":["name","sourceID"],"additionalProperties":false,"description":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell).","markdownDescription":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell)."},"minItems":1,"description":"A list of feats the background can grant.","markdownDescription":"A list of feats the background can grant."},"count":{"type":"integer","minimum":1,"maximum":2,"description":"The total number of feats the background can grant.","markdownDescription":"The total number of feats the background can grant."}},"required":["options","count"],"additionalProperties":false,"description":"The feats the background grants.","markdownDescription":"The feats the background grants."},"gainedSpells":{"type":"object","properties":{"options":{"type":"array","items":{"$ref":"#/properties/background/items/properties/data/properties/_tags/properties/gainedFeats/properties/options/items"},"minItems":1,"description":"A list of spells the background can grant.","markdownDescription":"A list of spells the background can grant."},"count":{"type":"integer","minimum":1,"maximum":2,"description":"The total number of feats the background can grant.","markdownDescription":"The total number of feats the background can grant."}},"required":["options","count"],"additionalProperties":false,"description":"The spells the background grants.","markdownDescription":"The spells the background grants."},"misc":{"type":"object","properties":{"Grants ability":{"type":"boolean","const":true,"description":"The background background grants an active, voluntary ability.","markdownDescription":"The background background grants an active, voluntary ability."},"Grants equipment":{"type":"boolean","const":true,"description":"The background grants a free item (not just access or proficiency—the actual concrete thing).","markdownDescription":"The background grants a free item (not just access or proficiency—the actual concrete thing)."},"Grants language":{"type":"boolean","const":true,"description":"The background grants a language.","markdownDescription":"The background grants a language."},"Grants resistance":{"type":"boolean","const":true,"description":"The background grants a damage resistance.","markdownDescription":"The background grants a damage resistance."},"Grants sense":{"type":"boolean","const":true,"description":"The background grants a sense (e.g. darkvision, scent).","markdownDescription":"The background grants a sense (e.g. darkvision, scent)."},"Grants situational benefit":{"type":"boolean","const":true,"description":"The background grants a passive benefit that isn't otherwise categorisable. For example, this would apply if the background grants a +1 circumstance bonus to Seek on cloudy days.","markdownDescription":"The background grants a passive benefit that isn't otherwise categorisable. For example, this would apply if the background grants a +1 circumstance bonus to Seek on cloudy days."},"Has drawback":{"type":"boolean","const":true,"description":"The background comes with an objective, mandatory drawback, such as a penalty to some check or the inability to use an item or spell; not something that is both good and bad.","markdownDescription":"The background comes with an objective, mandatory drawback, such as a penalty to some check or the inability to use an item or spell; not something that is both good and bad."},"GM influence":{"type":"boolean","const":true,"description":"The GM determines some mechanical aspect of the background. For instance, this would apply if the background specifies that the GM alone chooses one of the boosts or the type of Lore skill it grants.","markdownDescription":"The GM determines some mechanical aspect of the background. For instance, this would apply if the background specifies that the GM alone chooses one of the boosts or the type of Lore skill it grants."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["entries"],"additionalProperties":false,"description":"An object describing the content for filtering, searching, and sorting.","markdownDescription":"An object describing the content for filtering, searching, and sorting."},"reference":{"type":"object","properties":{"type":{"type":"string","enum":["reprint","variant","replacement","extension"],"description":"`reprint`: The statblock is (near) identical to another one, and is intended to be as such.\n`variant`: The statblock is dependent on but distinct to the target (e.g. unique NPCs based on generic monsters).\n`replacement`: The statblock replaces the target entirely everywhere.\n`extension`: The statblock adds additional content to the target but doesn't supersede it (e.g. a new option added to a spell).","markdownDescription":"`reprint`: The statblock is (near) identical to another one, and is intended to be as such.\n`variant`: The statblock is dependent on but distinct to the target (e.g. unique NPCs based on generic monsters).\n`replacement`: The statblock replaces the target entirely everywhere.\n`extension`: The statblock adds additional content to the target but doesn't supersede it (e.g. a new option added to a spell)."},"target":{"$ref":"#/properties/background/items/properties/data/properties/_tags/properties/gainedFeats/properties/options/items"},"modifications":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","minLength":1,"description":"The type of modification being applied.","markdownDescription":"The type of modification being applied."},"target":{"type":"object","properties":{"property":{"type":"string","pattern":"^\\w+(?:\\.\\w+)+&","description":"A dot-separated hierarchy of properties leading to the target from the top-level `data` (e.g. \"castingTime.unit\").","markdownDescription":"A dot-separated hierarchy of properties leading to the target from the top-level `data` (e.g. \"castingTime.unit\")."},"name":{"type":"string","minLength":1,"description":"The `name` of the target object, if it is found in an array. This typically refers to arrays of `entryObject`s.","markdownDescription":"The `name` of the target object, if it is found in an array. This typically refers to arrays of `entryObject`s."}},"required":["property"],"additionalProperties":true},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"object","properties":{},"additionalProperties":true},{"type":"array"},{"type":"boolean"}],"description":"The modification value.","markdownDescription":"The modification value."}},"required":["type","target"],"additionalProperties":true,"description":"A single modification step.","markdownDescription":"A single modification step."},"minItems":1,"description":"An array of changes which, when applied consecutively, transforms the target content into the referring content.","markdownDescription":"An array of changes which, when applied consecutively, transforms the target content into the referring content."}},"required":["type","target"],"additionalProperties":false,"description":"An explicit reference to some other content, possibly with modifications applied on top. The referenced content's type is always assumed to be the same as the referring content.","markdownDescription":"An explicit reference to some other content, possibly with modifications applied on top. The referenced content's type is always assumed to be the same as the referring content."}},"required":["type","name","source"],"additionalProperties":false,"description":"A condition","markdownDescription":"A condition"},"minItems":1},"condition":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"condition"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"entries":{"$ref":"#/properties/background/items/properties/data/properties/entries"},"_tags":{"type":"object","properties":{"group":{"type":"object","properties":{"Attitudes":{"type":"boolean","const":true,"description":"The condition is in the 'Attitudes' group (CRB p619).","markdownDescription":"The condition is in the 'Attitudes' group (CRB p619)."},"Death and Dying":{"type":"boolean","const":true,"description":"The condition is in the 'Death and Dying' group (CRB p619).","markdownDescription":"The condition is in the 'Death and Dying' group (CRB p619)."},"Degrees of Detection":{"type":"boolean","const":true,"description":"The condition is in the 'Degrees of Detection' group (CRB p619).","markdownDescription":"The condition is in the 'Degrees of Detection' group (CRB p619)."},"Lowered Abilities":{"type":"boolean","const":true,"description":"The condition is in the 'Lowered Abilities' group (CRB p619).","markdownDescription":"The condition is in the 'Lowered Abilities' group (CRB p619)."},"Senses":{"type":"boolean","const":true,"description":"The condition is in the 'Senses' group (CRB p619).","markdownDescription":"The condition is in the 'Senses' group (CRB p619)."}},"additionalProperties":{"type":"boolean","const":true},"description":"An object containing any groups the condition belongs to. The properties should be in title case.","markdownDescription":"An object containing any groups the condition belongs to. The properties should be in title case."}},"additionalProperties":false}},"required":["entries"],"additionalProperties":false,"description":"An object describing the content for filtering, searching, and sorting.","markdownDescription":"An object describing the content for filtering, searching, and sorting."},"reference":{"$ref":"#/properties/background/items/properties/reference"}},"required":["type","name","source"],"additionalProperties":false,"description":"A condition","markdownDescription":"A condition"},"minItems":1},"domain":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"domain"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"preamble":{"type":"string","minLength":1,"description":"The typically brief sentence or two of flavour text that describes the domain or otherwise provides guidance on its use.","markdownDescription":"The typically brief sentence or two of flavour text that describes the domain or otherwise provides guidance on its use."},"domainSpell":{"$ref":"#/properties/background/items/properties/data/properties/_tags/properties/gainedFeats/properties/options/items"},"advancedDomainSpell":{"$ref":"#/properties/background/items/properties/data/properties/_tags/properties/gainedFeats/properties/options/items"},"apocryphalSpell":{"type":"object","properties":{"name":{"$ref":"#/properties/background/items/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/name"},"specifier":{"$ref":"#/properties/background/items/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/specifier"},"sourceID":{"$ref":"#/properties/background/items/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/sourceID"}},"required":["name","sourceID"],"additionalProperties":false,"description":"A reference target to the domain's apocryphal spell (see Dark Archive p142)","markdownDescription":"A reference target to the domain's apocryphal spell (see Dark Archive p142)"},"advancedApocryphalSpell":{"type":"object","properties":{"name":{"$ref":"#/properties/background/items/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/name"},"specifier":{"$ref":"#/properties/background/items/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/specifier"},"sourceID":{"$ref":"#/properties/background/items/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/sourceID"}},"required":["name","sourceID"],"additionalProperties":false,"description":"The reference target to the domain's advanced apocryphal spell (see Dark Archive p142)","markdownDescription":"The reference target to the domain's advanced apocryphal spell (see Dark Archive p142)"}},"required":["domainSpell","advancedDomainSpell"],"additionalProperties":false},"reference":{"$ref":"#/properties/background/items/properties/reference"}},"required":["type","name","source"],"additionalProperties":false,"description":"A domain (for a religion)","markdownDescription":"A domain (for a religion)"},"minItems":1},"event":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"event"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"level":{"type":"integer","minimum":-1,"description":"The event's level","markdownDescription":"The event's level"},"traits":{"$ref":"#/properties/background/items/properties/data/properties/traits"},"applicableSkills":{"type":"array","items":{"type":"object","properties":{"skill":{"type":"string","enum":["Acrobatics","Arcana","Athletics","Crafting","Deception","Diplomacy","Intimidation","Lore","Medicine","Nature","Occultism","Performance","Religion","Society","Stealth","Survival","Thievery"],"description":"The name of the skill (title case).","markdownDescription":"The name of the skill (title case)."},"variables":{"type":"array","items":{"type":"string","minLength":1,"pattern":"^[A-Z]"},"minItems":1,"description":"A skill's variable element (e.g. \"Accounting\" and \"Midwifery\" in \"Accounting or Midwifery Lore\").","markdownDescription":"A skill's variable element (e.g. \"Accounting\" and \"Midwifery\" in \"Accounting or Midwifery Lore\")."},"display":{"type":"string","minLength":1,"description":"How the skill should display, if it cannot be trivially inferred from `skill` and `variables`. (Example: \"Accounting and Midwifery Lore\".)","markdownDescription":"How the skill should display, if it cannot be trivially inferred from `skill` and `variables`. (Example: \"Accounting and Midwifery Lore\".)"}},"required":["skill"],"additionalProperties":false,"description":"A combined object to describe a type of skill referenced by other content.","markdownDescription":"A combined object to describe a type of skill referenced by other content."},"minItems":1,"description":"An array of objects representing the event's applicable skills.","markdownDescription":"An array of objects representing the event's applicable skills."},"entries":{"$ref":"#/properties/background/items/properties/data/properties/entries"}},"required":["level","entries"],"additionalProperties":false},"reference":{"$ref":"#/properties/background/items/properties/reference"}},"required":["type","name","source"],"additionalProperties":false,"description":"An event","markdownDescription":"An event"},"minItems":1},"familiarAbility":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"familiarAbility"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"abilityType":{"type":"string","enum":["Familiar","Master"],"description":"The familiar ability's type.","markdownDescription":"The familiar ability's type."},"entries":{"$ref":"#/properties/background/items/properties/data/properties/entries"},"_tags":{"type":"object","properties":{"misc":{"type":"object","properties":{"affectsCommunication":{"type":"boolean","const":true,"description":"The ability affects the familiar's capacity to communicate (e.g. by granting it languages).","markdownDescription":"The ability affects the familiar's capacity to communicate (e.g. by granting it languages)."},"affectsSenses":{"type":"boolean","const":true,"description":"The ability affects the familiar's senses or grants a new sense (e.g. darkvision, scent).","markdownDescription":"The ability affects the familiar's senses or grants a new sense (e.g. darkvision, scent)."},"affectsMovement":{"type":"boolean","const":true,"description":"The ability affects the familiar's capacity to move or grants a new Speed.","markdownDescription":"The ability affects the familiar's capacity to move or grants a new Speed."},"hasRequirement":{"type":"boolean","const":true,"description":"You or the familiar must satisfy a certain requirement to choose this ability.","markdownDescription":"You or the familiar must satisfy a certain requirement to choose this ability."},"grantsAbility":{"type":"boolean","const":true,"description":"The ability grants you or the familiar an active, voluntary ability.","markdownDescription":"The ability grants you or the familiar an active, voluntary ability."},"repeatable":{"type":"boolean","const":true,"description":"You can select this ability multiple times.","markdownDescription":"You can select this ability multiple times."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["abilityType","entries"],"additionalProperties":false,"description":"An object describing the content for filtering, searching, and sorting.","markdownDescription":"An object describing the content for filtering, searching, and sorting."},"reference":{"$ref":"#/properties/background/items/properties/reference"}},"required":["type","name","source"],"additionalProperties":false,"description":"A familiar ability","markdownDescription":"A familiar ability"},"minItems":1},"relicGift":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"relicGift"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"tier":{"type":"string","minLength":1,"pattern":"^[A-Z]","description":"The relic gift's tier (title case)","markdownDescription":"The relic gift's tier (title case)"},"traits":{"$ref":"#/properties/background/items/properties/data/properties/traits"},"aspects":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"The aspect's name","markdownDescription":"The aspect's name"},"note":{"type":"string","minLength":1,"description":"A bracketed note qualifying the aspect (e.g. the \"azata-themed\" in \"celestial (azata-themed)\").","markdownDescription":"A bracketed note qualifying the aspect (e.g. the \"azata-themed\" in \"celestial (azata-themed)\")."}},"required":["name"],"additionalProperties":false}},"prerequisites":{"$ref":"#/properties/license/items/properties/data/properties/entries/items/anyOf/0","description":"A single paragraph that accepts in-line formatting via `@tag`s.","markdownDescription":"A single paragraph that accepts in-line formatting via `@tag`s."},"entries":{"$ref":"#/properties/background/items/properties/data/properties/entries"},"_tags":{"type":"object","properties":{"itemTypes":{"type":"object","properties":{"Armor":{"type":"boolean","const":true,"description":"The relic must be a piece or suit of armour to have this gift.","markdownDescription":"The relic must be a piece or suit of armour to have this gift."},"Worn Item":{"type":"boolean","const":true,"description":"The relic must be a worn item to have this gift.","markdownDescription":"The relic must be a worn item to have this gift."},"Weapon":{"type":"boolean","const":true,"description":"The relic must be a weapon to have this gift.","markdownDescription":"The relic must be a weapon to have this gift."}},"additionalProperties":{"type":"boolean","const":true},"description":"An object containing the types of item the relic must be in order to have this gift. The properties should be in title case.","markdownDescription":"An object containing the types of item the relic must be in order to have this gift. The properties should be in title case."},"misc":{"type":"object","properties":{"Alters relic":{"type":"boolean","const":true,"description":"The gift permanently changes the relic's nature in some way.","markdownDescription":"The gift permanently changes the relic's nature in some way."},"Grants ability":{"type":"boolean","const":true,"description":"The gift grants the character a new, activatable ability (including spells).","markdownDescription":"The gift grants the character a new, activatable ability (including spells)."},"Grants passive attribute":{"type":"boolean","const":true,"description":"The gift grants the character a new Speed, a damage resistance, an automatic bonus, or another always-active ability.","markdownDescription":"The gift grants the character a new Speed, a damage resistance, an automatic bonus, or another always-active ability."},"Is rune":{"type":"boolean","const":true,"description":"The gift mimics the effect of a rune.","markdownDescription":"The gift mimics the effect of a rune."},"Soul seed":{"type":"boolean","const":true,"description":"The gift is \"particularly appropriate\" for soul seeds (SoM p230).","markdownDescription":"The gift is \"particularly appropriate\" for soul seeds (SoM p230)."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["tier","aspects","entries"],"additionalProperties":false,"description":"An object describing the content for filtering, searching, and sorting.","markdownDescription":"An object describing the content for filtering, searching, and sorting."},"reference":{"$ref":"#/properties/background/items/properties/reference"}},"required":["type","name","source"],"additionalProperties":false,"description":"A relic gift","markdownDescription":"A relic gift"},"minItems":1},"skill":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","const":"skill"},"name":{"$ref":"#/properties/background/items/properties/name"},"source":{"$ref":"#/properties/background/items/properties/source"},"data":{"type":"object","properties":{"entries":{"$ref":"#/properties/background/items/properties/data/properties/entries"}},"required":["entries"],"additionalProperties":false},"reference":{"$ref":"#/properties/background/items/properties/reference"}},"required":["type","name","source","data"],"additionalProperties":false,"description":"A skill","markdownDescription":"A skill"},"minItems":1}},"required":["source"],"additionalProperties":true,"$schema":"http://json-schema.org/draft-07/schema#"} \ No newline at end of file diff --git a/_dist/schema/data.json b/_dist/schema/data.json index 2d118c7..599a710 100644 --- a/_dist/schema/data.json +++ b/_dist/schema/data.json @@ -1 +1 @@ -{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"license"},"ID":{"type":"string","pattern":"^[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]$","description":"The license's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.","markdownDescription":"The license's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"An abbreviation or other shortening of the license's `name` for display purposes.","markdownDescription":"An abbreviation or other shortening of the license's `name` for display purposes."},"short":{"type":"string","minLength":1,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the license's name","markdownDescription":"An object representing the license's name"},"data":{"type":"object","properties":{"entries":{"type":"array","items":{"anyOf":[{"type":"string","minLength":1,"description":"A single paragraph that accepts in-line formatting via `@tag`s.","markdownDescription":"A single paragraph that accepts in-line formatting via `@tag`s."},{"type":"object","properties":{"type":{"type":"string","minLength":1}},"required":["type"],"additionalProperties":true}]},"minItems":1,"description":"The full text of the license. Formatting may be used where it doesn't detract from its interpretation.","markdownDescription":"The full text of the license. Formatting may be used where it doesn't detract from its interpretation."}},"required":["entries"],"additionalProperties":false}},"required":["type","ID","title","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"source"},"ID":{"$ref":"#/anyOf/0/properties/ID","description":"The source's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.\n\nFor multi-part adventures, the standard is to use \"0\" for the player's guide (if any), and then \"#\" for each part, where \"#\" is the part's number.","markdownDescription":"The source's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.\n\nFor multi-part adventures, the standard is to use \"0\" for the player's guide (if any), and then \"#\" for each part, where \"#\" is the part's number."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"The source's full, human-readable name. Title case is preferred but anything can be used within reason.","markdownDescription":"The source's full, human-readable name. Title case is preferred but anything can be used within reason."},"short":{"type":"string","minLength":1,"maxLength":8,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the source's name","markdownDescription":"An object representing the source's name"},"data":{"type":"object","properties":{"released":{"type":"string","format":"date","description":"The source's publication date (YYYY-MM-DD). For content with a staggered release or early-access program, use the date the source was first made publicly available.","markdownDescription":"The source's publication date (YYYY-MM-DD). For content with a staggered release or early-access program, use the date the source was first made publicly available."},"version":{"type":"string","minLength":1,"description":"The target version for the converted data (if any). This value serves akin to a `specifier` in case multiple distinct versions of the same source are maintained. Leave undefined if there has only ever been one version. (Examples: \"2nd Printing\", \"v1.2\", \"Revised 2025\")","markdownDescription":"The target version for the converted data (if any). This value serves akin to a `specifier` in case multiple distinct versions of the same source are maintained. Leave undefined if there has only ever been one version. (Examples: \"2nd Printing\", \"v1.2\", \"Revised 2025\")"},"errataed":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) of the source's most recent errata applied to Pf2ools' content. Leave undefined if the source has never been errataed.","markdownDescription":"The date (YYYY-MM-DD) of the source's most recent errata applied to Pf2ools' content. Leave undefined if the source has never been errataed."},"added":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) the source was first made available on the Pf2ools ecosystem (complete or otherwise).","markdownDescription":"The date (YYYY-MM-DD) the source was first made available on the Pf2ools ecosystem (complete or otherwise)."},"modified":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) the source's content-data as maintained by the Pf2ools project was last modified.","markdownDescription":"The date (YYYY-MM-DD) the source's content-data as maintained by the Pf2ools project was last modified."},"URL":{"type":"string","format":"uri","description":"A website on which the content can be legally and publicly viewed, downloaded, or purchased. A first-party website (i.e. one controlled by the authors) is preferred. If the Pf2ools source is the authoritative version for distribution, you can use \"https://github.com/pf2ools/pf2ools-data\".","markdownDescription":"A website on which the content can be legally and publicly viewed, downloaded, or purchased. A first-party website (i.e. one controlled by the authors) is preferred. If the Pf2ools source is the authoritative version for distribution, you can use \"https://github.com/pf2ools/pf2ools-data\"."},"groupIDs":{"type":"array","items":{"$ref":"#/anyOf/0/properties/ID","description":"The `ID` of a source group.","markdownDescription":"The `ID` of a source group."},"minItems":1,"description":"A list of `ID`s of the source's parent groups (if any). This is used for a source that is part of a larger, clearly defined, multi-part series. For instance, \"Extinction Curse #1: The Show Must Go On\" belongs to the \"Extinction Curse\" series (\"EC\"), and \"Lost Omens: Travel Guide\" belongs to the \"Lost Omens\" series (\"LO\").","markdownDescription":"A list of `ID`s of the source's parent groups (if any). This is used for a source that is part of a larger, clearly defined, multi-part series. For instance, \"Extinction Curse #1: The Show Must Go On\" belongs to the \"Extinction Curse\" series (\"EC\"), and \"Lost Omens: Travel Guide\" belongs to the \"Lost Omens\" series (\"LO\")."},"requiredSourceIDs":{"type":"array","items":{"$ref":"#/anyOf/0/properties/ID","description":"The `ID` of the dependent homebrew source.","markdownDescription":"The `ID` of the dependent homebrew source."},"minItems":1,"description":"A list of `ID`s of other homebrew sources that this source requires. The requirement is strict: a source that adds a subclass to another, external homebrew class would list that class' source `ID`.","markdownDescription":"A list of `ID`s of other homebrew sources that this source requires. The requirement is strict: a source that adds a subclass to another, external homebrew class would list that class' source `ID`."},"licenseID":{"$ref":"#/anyOf/0/properties/ID","description":"The `ID` of the source's license.","markdownDescription":"The `ID` of the source's license."},"copyright":{"type":"array","items":{"$ref":"#/anyOf/0/properties/data/properties/entries/items"},"minItems":1,"description":"Any additional copyright text associated with the source. For instance, the copyright notice that accompanies the OGLv1.0a license would be entered here (but not the license itself), as does the ORC license's attribution notice. Formatting may be used where it doesn't detract from its interpretation.","markdownDescription":"Any additional copyright text associated with the source. For instance, the copyright notice that accompanies the OGLv1.0a license would be entered here (but not the license itself), as does the ORC license's attribution notice. Formatting may be used where it doesn't detract from its interpretation."},"authors":{"type":"array","items":{"type":"string","description":"An author's name. Online handles should be reasonably indicated (e.g. \"Twitter: @ThatVauxs\", \"Discord: @spap\").","markdownDescription":"An author's name. Online handles should be reasonably indicated (e.g. \"Twitter: @ThatVauxs\", \"Discord: @spap\")."},"minItems":1,"description":"A list of unique authors as credited by the source itself.","markdownDescription":"A list of unique authors as credited by the source itself."},"publisher":{"type":"string","minLength":2,"description":"The name of the source's publishing company or group (e.g. \"Paizo\" or \"Roll for Combat\", but not a general marketplace like \"Pathfinder Infinite\").","markdownDescription":"The name of the source's publishing company or group (e.g. \"Paizo\" or \"Roll for Combat\", but not a general marketplace like \"Pathfinder Infinite\")."},"converters":{"type":"array","items":{"type":"string","minLength":2,"description":"A converter's name. Discord usernames are strongly preferred; other online handles should be reasonably indicated.","markdownDescription":"A converter's name. Discord usernames are strongly preferred; other online handles should be reasonably indicated."},"minItems":1,"description":"A list of unique Pf2ools contributors who converted this source. If multiple converters exist, choose one 'principal' to go first in the case of questions or bug reports. This is particularly used for homebrew, both for attributing work done and to help organise updates.","markdownDescription":"A list of unique Pf2ools contributors who converted this source. If multiple converters exist, choose one 'principal' to go first in the case of questions or bug reports. This is particularly used for homebrew, both for attributing work done and to help organise updates."}},"required":["released","added","modified","URL","licenseID"],"additionalProperties":false},"tags":{"type":"object","properties":{"publicationType":{"type":"object","properties":{"Comic":{"type":"boolean","const":true,"description":"The source is content bundled with a comic.","markdownDescription":"The source is content bundled with a comic."},"Blog post":{"type":"boolean","const":true,"description":"The source is a blog post or another similar type of short, online article.","markdownDescription":"The source is a blog post or another similar type of short, online article."}},"additionalProperties":false,"description":"An object representing the type of publication the source can be categorised as. This is most relevant when the game content is bundled along with something that isn't a typical Pathfinder rulebook.","markdownDescription":"An object representing the type of publication the source can be categorised as. This is most relevant when the game content is bundled along with something that isn't a typical Pathfinder rulebook."},"status":{"type":"object","properties":{"Missing content":{"type":"boolean","const":true,"description":"This source is only partially converted right now (i.e. it lacks some content), but, one day, it could be completely up-to-date.","markdownDescription":"This source is only partially converted right now (i.e. it lacks some content), but, one day, it could be completely up-to-date."},"Missing tags":{"type":"boolean","const":true,"description":"The converted content this source contains isn't completely tagged, even if it all displays correctly.","markdownDescription":"The converted content this source contains isn't completely tagged, even if it all displays correctly."},"Invalid":{"type":"boolean","const":true,"description":"This source's data is invalid and either contains serious schema errors or is generally malformed. It exists for archival purposes only and is unmaintained.","markdownDescription":"This source's data is invalid and either contains serious schema errors or is generally malformed. It exists for archival purposes only and is unmaintained."}},"additionalProperties":false},"misc":{"type":"object","properties":{"legacyRuleset":{"type":"boolean","const":true,"description":"This source targets the original Pathfinder 2e ruleset, as published in the Core Rulebook (2019), and not as published in Player Core (2023).","markdownDescription":"This source targets the original Pathfinder 2e ruleset, as published in the Core Rulebook (2019), and not as published in Player Core (2023)."},"Official":{"type":"boolean","const":true,"description":"This source was created and published by Paizo as 'official' Pathfinder 2e content (that is, it's official insofar that something can be 'official').","markdownDescription":"This source was created and published by Paizo as 'official' Pathfinder 2e content (that is, it's official insofar that something can be 'official')."},"GM-facing":{"type":"boolean","const":true,"description":"This source is intended to be GM-facing, to the exclusion of players. This is typically due to it being an adventure, module, one-shot, scenario, or the like.","markdownDescription":"This source is intended to be GM-facing, to the exclusion of players. This is typically due to it being an adventure, module, one-shot, scenario, or the like."},"PFS-legal":{"type":"boolean","const":true,"description":"This source is legal for Pathfinder Society play.","markdownDescription":"This source is legal for Pathfinder Society play."},"Playtest":{"type":"boolean","const":true,"description":"This source contains playtest, early-access, or otherwise 'unfinished' content.","markdownDescription":"This source contains playtest, early-access, or otherwise 'unfinished' content."},"Ongoing":{"type":"boolean","const":true,"description":"This source is being continually expanded. The data only reflects content only up until the `errataed` date. This is used for 'monster a day' projects and the like, where the conversion may entail a substantial lag behind the publication.","markdownDescription":"This source is being continually expanded. The data only reflects content only up until the `errataed` date. This is used for 'monster a day' projects and the like, where the conversion may entail a substantial lag behind the publication."},"Deprecated":{"type":"boolean","const":true,"description":"This source has been wholly superseded by another version of the same content. This applies when a completely rewritten, revised version of the source exists; simple, minor modifications via errata do not.","markdownDescription":"This source has been wholly superseded by another version of the same content. This applies when a completely rewritten, revised version of the source exists; simple, minor modifications via errata do not."},"NSFW":{"type":"boolean","const":true,"description":"This source contains content of a particularly provocative, unsavoury, or otherwise adult-oriented nature.","markdownDescription":"This source contains content of a particularly provocative, unsavoury, or otherwise adult-oriented nature."}},"additionalProperties":false}},"additionalProperties":false,"description":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes.","markdownDescription":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes."}},"required":["type","ID","title","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"sourceGroup"},"ID":{"$ref":"#/anyOf/0/properties/ID","description":"The source group's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem (both sources and source groups).","markdownDescription":"The source group's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem (both sources and source groups)."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"The source group's full, human-readable name. Title case is preferred but anything can be used within reason.","markdownDescription":"The source group's full, human-readable name. Title case is preferred but anything can be used within reason."},"short":{"type":"string","minLength":1,"maxLength":8,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the source group's name","markdownDescription":"An object representing the source group's name"},"data":{"type":"object","properties":{"publisher":{"type":"string","minLength":2,"description":"The name of the original, first-party publisher of the source group. Sources with publishers not matching this value are considered 'third-party' contributors to the source group.","markdownDescription":"The name of the original, first-party publisher of the source group. Sources with publishers not matching this value are considered 'third-party' contributors to the source group."}},"required":["publisher"],"additionalProperties":false},"tags":{"type":"object","properties":{"misc":{"type":"object","properties":{"Adventure":{"type":"boolean","const":true,"description":"This source group is an adventure path or the like.","markdownDescription":"This source group is an adventure path or the like."},"Ongoing":{"type":"boolean","const":true,"description":"This source group is being continually expanded. Not all member-sources may exist on Pf2ools.","markdownDescription":"This source group is being continually expanded. Not all member-sources may exist on Pf2ools."}},"additionalProperties":false}},"required":["misc"],"additionalProperties":false,"description":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes.","markdownDescription":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes."}},"required":["type","ID","title"],"additionalProperties":false,"description":"A `sourceGroup` object defines the existence of a group of sources. Tautology aside, this is used to describe adventure paths, book series, and the like.","markdownDescription":"A `sourceGroup` object defines the existence of a group of sources. Tautology aside, this is used to describe adventure paths, book series, and the like."},{"type":"object","properties":{"type":{"type":"string","const":"background"},"name":{"type":"object","properties":{"primary":{"type":"string","minLength":1,"description":"The full name of the statblock or header, exactly as it appears in the source. The only exception is when the source uses stylistic all-caps or no-caps, in which case you should use your judgement and possibly convert it to title-case.","markdownDescription":"The full name of the statblock or header, exactly as it appears in the source. The only exception is when the source uses stylistic all-caps or no-caps, in which case you should use your judgement and possibly convert it to title-case."},"aliases":{"type":"array","items":{"type":"string","minLength":1,"description":"An alternative name for the content.","markdownDescription":"An alternative name for the content."},"minItems":1,"description":"An array of alternative names of an entity. Some entities have multiple common names, whether defined in the statblock itself or the surrounding text. Alternative names may also be provided to ease searching, sorting, and filtering with common mistakes (e.g. calling the Aid action \"Help\").","markdownDescription":"An array of alternative names of an entity. Some entities have multiple common names, whether defined in the statblock itself or the surrounding text. Alternative names may also be provided to ease searching, sorting, and filtering with common mistakes (e.g. calling the Aid action \"Help\")."},"specifier":{"type":"string","minLength":1,"description":"A string to meaningfully disambiguate identically named entities (by necessity if they're from the same source). This often occurs, for example, with feats common to multiple classes (e.g. \"Attack of Opportunity\"). It can also occur when one entity in the source effectively defines multiple entities in data, each of which need to be disambiguated.","markdownDescription":"A string to meaningfully disambiguate identically named entities (by necessity if they're from the same source). This often occurs, for example, with feats common to multiple classes (e.g. \"Attack of Opportunity\"). It can also occur when one entity in the source effectively defines multiple entities in data, each of which need to be disambiguated."}},"required":["primary"],"additionalProperties":false},"source":{"type":"object","properties":{"ID":{"$ref":"#/anyOf/0/properties/ID","description":"The source ID that contains the data.","markdownDescription":"The source ID that contains the data."},"page":{"type":"integer","description":"The page number (if any) on which the content begins.","markdownDescription":"The page number (if any) on which the content begins."}},"required":["ID"],"additionalProperties":false},"data":{"type":"object","properties":{"traits":{"type":"array","items":{"type":"object","properties":{"trait":{"type":"string","minLength":1,"pattern":"^[a-z]","description":"The bare, keyworded name of the trait (e.g. the \"versatile\" in \"versatile P\").","markdownDescription":"The bare, keyworded name of the trait (e.g. the \"versatile\" in \"versatile P\")."},"variables":{"type":"array","items":{"type":"string","minLength":1},"minItems":1,"description":"The variable elements of a trait in an array.","markdownDescription":"The variable elements of a trait in an array."},"display":{"type":"string","minLength":1,"description":"How the trait should display, if it cannot be trivially inferred from `trait` and `variables`. (Example: \"modular (P and grapple, or S and sweep)\".)","markdownDescription":"How the trait should display, if it cannot be trivially inferred from `trait` and `variables`. (Example: \"modular (P and grapple, or S and sweep)\".)"}},"required":["trait"],"additionalProperties":false,"description":"A trait with both keyword and variable elements.","markdownDescription":"A trait with both keyword and variable elements."},"minItems":1,"description":"An array of objects representing a list of traits.","markdownDescription":"An array of objects representing a list of traits."},"entries":{"type":"array","items":{"$ref":"#/anyOf/0/properties/data/properties/entries/items"},"minItems":1}},"required":["entries"],"additionalProperties":false},"reference":{"type":"object","properties":{"type":{"type":"string","enum":["reprint","variant","replacement","extension"],"description":"`reprint`: The statblock is (near) identical to another one, and is intended to be as such.\n`variant`: The statblock is dependent on but distinct to the target (e.g. unique NPCs based on generic monsters).\n`replacement`: The statblock replaces the target entirely everywhere.\n`extension`: The statblock adds additional content to the target but doesn't supersede it (e.g. a new option added to a spell).","markdownDescription":"`reprint`: The statblock is (near) identical to another one, and is intended to be as such.\n`variant`: The statblock is dependent on but distinct to the target (e.g. unique NPCs based on generic monsters).\n`replacement`: The statblock replaces the target entirely everywhere.\n`extension`: The statblock adds additional content to the target but doesn't supersede it (e.g. a new option added to a spell)."},"target":{"type":"object","properties":{"name":{"type":"string","minLength":1},"specifier":{"type":"string","minLength":1},"sourceID":{"$ref":"#/anyOf/0/properties/ID"}},"required":["name","sourceID"],"additionalProperties":false,"description":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell).","markdownDescription":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell)."},"modifications":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","minLength":1,"description":"The type of modification being applied.","markdownDescription":"The type of modification being applied."},"target":{"type":"object","properties":{"property":{"type":"string","pattern":"^\\w+(?:\\.\\w+)+&","description":"A dot-separated hierarchy of properties leading to the target from the top-level `data` (e.g. \"castingTime.unit\").","markdownDescription":"A dot-separated hierarchy of properties leading to the target from the top-level `data` (e.g. \"castingTime.unit\")."},"name":{"type":"string","minLength":1,"description":"The `name` of the target object, if it is found in an array. This typically refers to arrays of `entryObject`s.","markdownDescription":"The `name` of the target object, if it is found in an array. This typically refers to arrays of `entryObject`s."}},"required":["property"],"additionalProperties":true},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"object","properties":{},"additionalProperties":true},{"type":"array"},{"type":"boolean"}],"description":"The modification value.","markdownDescription":"The modification value."}},"required":["type","target"],"additionalProperties":true,"description":"A single modification step.","markdownDescription":"A single modification step."},"minItems":1,"description":"An array of changes which, when applied consecutively, transforms the target content into the referring content.","markdownDescription":"An array of changes which, when applied consecutively, transforms the target content into the referring content."}},"required":["type","target"],"additionalProperties":false,"description":"An explicit reference to some other content, possibly with modifications applied on top. The referenced content's type is always assumed to be the same as the referring content.","markdownDescription":"An explicit reference to some other content, possibly with modifications applied on top. The referenced content's type is always assumed to be the same as the referring content."},"tags":{"type":"object","properties":{"abilityBoosts":{"type":"object","properties":{"abilities":{"type":"object","additionalProperties":{"type":"boolean","const":true},"description":"An object containing the types of boost that the background can grant.","markdownDescription":"An object containing the types of boost that the background can grant."},"count":{"type":"integer","minimum":1,"maximum":3,"description":"The total number of boosts the background can grant.","markdownDescription":"The total number of boosts the background can grant."}},"required":["abilities","count"],"additionalProperties":false,"description":"The ability boosts the background grants.","markdownDescription":"The ability boosts the background grants."},"trainedSkills":{"type":"object","properties":{"skills":{"type":"object","additionalProperties":{"type":"boolean","const":true},"description":"A list of skills in which the background can grant proficiency.","markdownDescription":"A list of skills in which the background can grant proficiency."},"count":{"type":"integer","minimum":1,"maximum":4,"description":"The total number of distinct skill proficiencies the background can grant.","markdownDescription":"The total number of distinct skill proficiencies the background can grant."}},"required":["skills","count"],"additionalProperties":false,"description":"The skills in which the background can grant proficiency.","markdownDescription":"The skills in which the background can grant proficiency."},"gainedFeats":{"type":"object","properties":{"options":{"type":"array","items":{"$ref":"#/anyOf/3/properties/reference/properties/target"},"minItems":1,"description":"A list of feats the background can grant.","markdownDescription":"A list of feats the background can grant."},"count":{"type":"integer","minimum":1,"maximum":2,"description":"The total number of feats the background can grant.","markdownDescription":"The total number of feats the background can grant."}},"required":["options","count"],"additionalProperties":false,"description":"The feats the background grants.","markdownDescription":"The feats the background grants."},"gainedSpells":{"type":"object","properties":{"options":{"type":"array","items":{"$ref":"#/anyOf/3/properties/reference/properties/target"},"minItems":1,"description":"A list of spells the background can grant.","markdownDescription":"A list of spells the background can grant."},"count":{"type":"integer","minimum":1,"maximum":2,"description":"The total number of feats the background can grant.","markdownDescription":"The total number of feats the background can grant."}},"required":["options","count"],"additionalProperties":false,"description":"The spells the background grants.","markdownDescription":"The spells the background grants."},"misc":{"type":"object","properties":{"Grants ability":{"type":"boolean","const":true,"description":"The background background grants an active, voluntary ability.","markdownDescription":"The background background grants an active, voluntary ability."},"Grants equipment":{"type":"boolean","const":true,"description":"The background grants a free item (not just access or proficiency—the actual concrete thing).","markdownDescription":"The background grants a free item (not just access or proficiency—the actual concrete thing)."},"Grants language":{"type":"boolean","const":true,"description":"The background grants a language.","markdownDescription":"The background grants a language."},"Grants resistance":{"type":"boolean","const":true,"description":"The background grants a damage resistance.","markdownDescription":"The background grants a damage resistance."},"Grants sense":{"type":"boolean","const":true,"description":"The background grants a sense (e.g. darkvision, scent).","markdownDescription":"The background grants a sense (e.g. darkvision, scent)."},"Grants situational benefit":{"type":"boolean","const":true,"description":"The background grants a passive benefit that isn't otherwise categorisable. For example, this would apply if the background grants a +1 circumstance bonus to Seek on cloudy days.","markdownDescription":"The background grants a passive benefit that isn't otherwise categorisable. For example, this would apply if the background grants a +1 circumstance bonus to Seek on cloudy days."},"Has drawback":{"type":"boolean","const":true,"description":"The background comes with an objective, mandatory drawback, such as a penalty to some check or the inability to use an item or spell; not something that is both good and bad.","markdownDescription":"The background comes with an objective, mandatory drawback, such as a penalty to some check or the inability to use an item or spell; not something that is both good and bad."},"GM influence":{"type":"boolean","const":true,"description":"The GM determines some mechanical aspect of the background. For instance, this would apply if the background specifies that the GM alone chooses one of the boosts or the type of Lore skill it grants.","markdownDescription":"The GM determines some mechanical aspect of the background. For instance, this would apply if the background specifies that the GM alone chooses one of the boosts or the type of Lore skill it grants."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["type","name","source","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"condition"},"name":{"$ref":"#/anyOf/3/properties/name"},"source":{"$ref":"#/anyOf/3/properties/source"},"data":{"type":"object","properties":{"entries":{"$ref":"#/anyOf/3/properties/data/properties/entries"}},"required":["entries"],"additionalProperties":false},"reference":{"$ref":"#/anyOf/3/properties/reference"},"tags":{"type":"object","properties":{"group":{"type":"object","properties":{"Attitudes":{"type":"boolean","const":true,"description":"The condition is in the 'Attitudes' group (CRB p619).","markdownDescription":"The condition is in the 'Attitudes' group (CRB p619)."},"Death and Dying":{"type":"boolean","const":true,"description":"The condition is in the 'Death and Dying' group (CRB p619).","markdownDescription":"The condition is in the 'Death and Dying' group (CRB p619)."},"Degrees of Detection":{"type":"boolean","const":true,"description":"The condition is in the 'Degrees of Detection' group (CRB p619).","markdownDescription":"The condition is in the 'Degrees of Detection' group (CRB p619)."},"Lowered Abilities":{"type":"boolean","const":true,"description":"The condition is in the 'Lowered Abilities' group (CRB p619).","markdownDescription":"The condition is in the 'Lowered Abilities' group (CRB p619)."},"Senses":{"type":"boolean","const":true,"description":"The condition is in the 'Senses' group (CRB p619).","markdownDescription":"The condition is in the 'Senses' group (CRB p619)."}},"additionalProperties":{"type":"boolean","const":true},"description":"An object containing any groups the condition belongs to. The properties should be in title case.","markdownDescription":"An object containing any groups the condition belongs to. The properties should be in title case."}},"additionalProperties":false}},"required":["type","name","source","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"divineIntercession"},"name":{"$ref":"#/anyOf/3/properties/name"},"source":{"$ref":"#/anyOf/3/properties/source"},"data":{"type":"object","properties":{"deity":{"type":"object","properties":{"name":{"$ref":"#/anyOf/3/properties/reference/properties/target/properties/name"},"specifier":{"$ref":"#/anyOf/3/properties/reference/properties/target/properties/specifier"},"sourceID":{"$ref":"#/anyOf/3/properties/reference/properties/target/properties/sourceID"}},"required":["name","sourceID"],"additionalProperties":false,"description":"The deity whose intercessions are being described.","markdownDescription":"The deity whose intercessions are being described."},"preamble":{"type":"array","items":{"$ref":"#/anyOf/0/properties/data/properties/entries/items"},"minItems":1,"description":"The flavour text or GM guidance that precedes the boons/curses themselves.","markdownDescription":"The flavour text or GM guidance that precedes the boons/curses themselves."},"Minor Boon":{"$ref":"#/anyOf/3/properties/data/properties/entries"},"Moderate Boon":{"$ref":"#/anyOf/3/properties/data/properties/entries"},"Major Boon":{"$ref":"#/anyOf/3/properties/data/properties/entries"},"Minor Curse":{"$ref":"#/anyOf/3/properties/data/properties/entries"},"Moderate Curse":{"$ref":"#/anyOf/3/properties/data/properties/entries"},"Major Curse":{"$ref":"#/anyOf/3/properties/data/properties/entries"}},"required":["deity"],"additionalProperties":false},"reference":{"$ref":"#/anyOf/3/properties/reference"},"tags":{"type":"object","properties":{},"additionalProperties":true,"description":"An object describing the content for filtering, searching, and sorting.","markdownDescription":"An object describing the content for filtering, searching, and sorting."}},"required":["type","name","source","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"domain"},"name":{"$ref":"#/anyOf/3/properties/name"},"source":{"$ref":"#/anyOf/3/properties/source"},"data":{"type":"object","properties":{"preamble":{"type":"string","minLength":1,"description":"The typically brief sentence or two of flavour text that describes the domain or otherwise provides guidance on its use.","markdownDescription":"The typically brief sentence or two of flavour text that describes the domain or otherwise provides guidance on its use."},"domainSpell":{"$ref":"#/anyOf/3/properties/reference/properties/target"},"advancedDomainSpell":{"$ref":"#/anyOf/3/properties/reference/properties/target"},"apocryphalSpell":{"$ref":"#/anyOf/3/properties/reference/properties/target","description":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell).","markdownDescription":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell)."},"advancedApocryphalSpell":{"$ref":"#/anyOf/3/properties/reference/properties/target","description":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell).","markdownDescription":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell)."}},"required":["domainSpell","advancedDomainSpell"],"additionalProperties":false},"reference":{"$ref":"#/anyOf/3/properties/reference"},"tags":{"$ref":"#/anyOf/5/properties/tags"}},"required":["type","name","source","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"event"},"name":{"$ref":"#/anyOf/3/properties/name"},"source":{"$ref":"#/anyOf/3/properties/source"},"data":{"type":"object","properties":{"level":{"type":"integer","minimum":-1,"description":"The event's level","markdownDescription":"The event's level"},"traits":{"$ref":"#/anyOf/3/properties/data/properties/traits"},"applicableSkills":{"type":"array","items":{"type":"object","properties":{"skill":{"type":"string","enum":["Acrobatics","Arcana","Athletics","Crafting","Deception","Diplomacy","Intimidation","Lore","Medicine","Nature","Occultism","Performance","Religion","Society","Stealth","Survival","Thievery"],"description":"The name of the skill (title case).","markdownDescription":"The name of the skill (title case)."},"variables":{"type":"array","items":{"type":"string","minLength":1,"pattern":"^[A-Z]"},"minItems":1,"description":"A skill's variable element (e.g. \"Accounting\" and \"Midwifery\" in \"Accounting or Midwifery Lore\").","markdownDescription":"A skill's variable element (e.g. \"Accounting\" and \"Midwifery\" in \"Accounting or Midwifery Lore\")."},"display":{"type":"string","minLength":1,"description":"How the skill should display, if it cannot be trivially inferred from `skill` and `variables`. (Example: \"Accounting and Midwifery Lore\".)","markdownDescription":"How the skill should display, if it cannot be trivially inferred from `skill` and `variables`. (Example: \"Accounting and Midwifery Lore\".)"}},"required":["skill"],"additionalProperties":false,"description":"A combined object to describe a type of skill referenced by other content.","markdownDescription":"A combined object to describe a type of skill referenced by other content."},"minItems":1,"description":"An array of objects representing the event's applicable skills.","markdownDescription":"An array of objects representing the event's applicable skills."},"entries":{"$ref":"#/anyOf/3/properties/data/properties/entries"}},"required":["level","entries"],"additionalProperties":false},"reference":{"$ref":"#/anyOf/3/properties/reference"},"tags":{"$ref":"#/anyOf/5/properties/tags"}},"required":["type","name","source","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"familiarAbility"},"name":{"$ref":"#/anyOf/3/properties/name"},"source":{"$ref":"#/anyOf/3/properties/source"},"data":{"type":"object","properties":{"abilityType":{"type":"string","enum":["Familiar","Master"],"description":"The familiar ability's type.","markdownDescription":"The familiar ability's type."},"entries":{"$ref":"#/anyOf/3/properties/data/properties/entries"}},"required":["abilityType","entries"],"additionalProperties":false},"reference":{"$ref":"#/anyOf/3/properties/reference"},"tags":{"type":"object","properties":{"misc":{"type":"object","properties":{"affectsCommunication":{"type":"boolean","const":true,"description":"The ability affects the familiar's capacity to communicate (e.g. by granting it languages).","markdownDescription":"The ability affects the familiar's capacity to communicate (e.g. by granting it languages)."},"affectsSenses":{"type":"boolean","const":true,"description":"The ability affects the familiar's senses or grants a new sense (e.g. darkvision, scent).","markdownDescription":"The ability affects the familiar's senses or grants a new sense (e.g. darkvision, scent)."},"affectsMovement":{"type":"boolean","const":true,"description":"The ability affects the familiar's capacity to move or grants a new Speed.","markdownDescription":"The ability affects the familiar's capacity to move or grants a new Speed."},"hasRequirement":{"type":"boolean","const":true,"description":"You or the familiar must satisfy a certain requirement to choose this ability.","markdownDescription":"You or the familiar must satisfy a certain requirement to choose this ability."},"grantsAbility":{"type":"boolean","const":true,"description":"The ability grants you or the familiar an active, voluntary ability.","markdownDescription":"The ability grants you or the familiar an active, voluntary ability."},"repeatable":{"type":"boolean","const":true,"description":"You can select this ability multiple times.","markdownDescription":"You can select this ability multiple times."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["type","name","source","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"relicGift"},"name":{"$ref":"#/anyOf/3/properties/name"},"source":{"$ref":"#/anyOf/3/properties/source"},"data":{"type":"object","properties":{"tier":{"type":"string","minLength":1,"pattern":"^[A-Z]","description":"The relic gift's tier (title case)","markdownDescription":"The relic gift's tier (title case)"},"traits":{"$ref":"#/anyOf/3/properties/data/properties/traits"},"aspects":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"The aspect's name","markdownDescription":"The aspect's name"},"note":{"type":"string","minLength":1,"description":"A bracketed note qualifying the aspect (e.g. the \"azata-themed\" in \"celestial (azata-themed)\").","markdownDescription":"A bracketed note qualifying the aspect (e.g. the \"azata-themed\" in \"celestial (azata-themed)\")."}},"required":["name"],"additionalProperties":false}},"prerequisites":{"$ref":"#/anyOf/0/properties/data/properties/entries/items/anyOf/0","description":"A single paragraph that accepts in-line formatting via `@tag`s.","markdownDescription":"A single paragraph that accepts in-line formatting via `@tag`s."},"entries":{"$ref":"#/anyOf/3/properties/data/properties/entries"}},"required":["tier","aspects","entries"],"additionalProperties":false},"reference":{"$ref":"#/anyOf/3/properties/reference"},"tags":{"type":"object","properties":{"itemTypes":{"type":"object","properties":{"Armor":{"type":"boolean","const":true,"description":"The relic must be a piece or suit of armour to have this gift.","markdownDescription":"The relic must be a piece or suit of armour to have this gift."},"Worn Item":{"type":"boolean","const":true,"description":"The relic must be a worn item to have this gift.","markdownDescription":"The relic must be a worn item to have this gift."},"Weapon":{"type":"boolean","const":true,"description":"The relic must be a weapon to have this gift.","markdownDescription":"The relic must be a weapon to have this gift."}},"additionalProperties":{"type":"boolean","const":true},"description":"An object containing the types of item the relic must be in order to have this gift. The properties should be in title case.","markdownDescription":"An object containing the types of item the relic must be in order to have this gift. The properties should be in title case."},"misc":{"type":"object","properties":{"Alters relic":{"type":"boolean","const":true,"description":"The gift permanently changes the relic's nature in some way.","markdownDescription":"The gift permanently changes the relic's nature in some way."},"Grants ability":{"type":"boolean","const":true,"description":"The gift grants the character a new, activatable ability (including spells).","markdownDescription":"The gift grants the character a new, activatable ability (including spells)."},"Grants passive attribute":{"type":"boolean","const":true,"description":"The gift grants the character a new Speed, a damage resistance, an automatic bonus, or another always-active ability.","markdownDescription":"The gift grants the character a new Speed, a damage resistance, an automatic bonus, or another always-active ability."},"Is rune":{"type":"boolean","const":true,"description":"The gift mimics the effect of a rune.","markdownDescription":"The gift mimics the effect of a rune."},"Soul seed":{"type":"boolean","const":true,"description":"The gift is \"particularly appropriate\" for soul seeds (SoM p230).","markdownDescription":"The gift is \"particularly appropriate\" for soul seeds (SoM p230)."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["type","name","source","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"skill"},"name":{"$ref":"#/anyOf/3/properties/name"},"source":{"$ref":"#/anyOf/3/properties/source"},"data":{"type":"object","properties":{"entries":{"$ref":"#/anyOf/3/properties/data/properties/entries"}},"required":["entries"],"additionalProperties":false},"reference":{"$ref":"#/anyOf/3/properties/reference"},"tags":{"$ref":"#/anyOf/5/properties/tags"}},"required":["type","name","source","data"],"additionalProperties":false}],"$schema":"http://json-schema.org/draft-07/schema#"} \ No newline at end of file +{"anyOf":[{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"background"},"name":{"type":"object","properties":{"primary":{"type":"string","minLength":1,"description":"The full name of the statblock or header, exactly as it appears in the source. The only exception is when the source uses stylistic all-caps or no-caps, in which case you should use your judgement and possibly convert it to title-case.","markdownDescription":"The full name of the statblock or header, exactly as it appears in the source. The only exception is when the source uses stylistic all-caps or no-caps, in which case you should use your judgement and possibly convert it to title-case."},"aliases":{"type":"array","items":{"type":"string","minLength":1,"description":"An alternative name for the content.","markdownDescription":"An alternative name for the content."},"minItems":1,"description":"An array of alternative names of an entity. Some entities have multiple common names, whether defined in the statblock itself or the surrounding text. Alternative names may also be provided to ease searching, sorting, and filtering with common mistakes (e.g. calling the Aid action \"Help\").","markdownDescription":"An array of alternative names of an entity. Some entities have multiple common names, whether defined in the statblock itself or the surrounding text. Alternative names may also be provided to ease searching, sorting, and filtering with common mistakes (e.g. calling the Aid action \"Help\")."},"specifier":{"type":"string","minLength":1,"description":"A string to meaningfully disambiguate identically named entities (by necessity if they're from the same source). This often occurs, for example, with feats common to multiple classes (e.g. \"Attack of Opportunity\"). It can also occur when one entity in the source effectively defines multiple entities in data, each of which need to be disambiguated.","markdownDescription":"A string to meaningfully disambiguate identically named entities (by necessity if they're from the same source). This often occurs, for example, with feats common to multiple classes (e.g. \"Attack of Opportunity\"). It can also occur when one entity in the source effectively defines multiple entities in data, each of which need to be disambiguated."}},"required":["primary"],"additionalProperties":false},"source":{"type":"object","properties":{"ID":{"type":"string","pattern":"^[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]$","description":"The source ID that contains the data.","markdownDescription":"The source ID that contains the data."},"page":{"type":"integer","description":"The page number (if any) on which the content begins.","markdownDescription":"The page number (if any) on which the content begins."}},"required":["ID"],"additionalProperties":false},"data":{"type":"object","properties":{"traits":{"type":"array","items":{"type":"object","properties":{"trait":{"type":"string","minLength":1,"pattern":"^[a-z]","description":"The bare, keyworded name of the trait (e.g. the \"versatile\" in \"versatile P\").","markdownDescription":"The bare, keyworded name of the trait (e.g. the \"versatile\" in \"versatile P\")."},"variables":{"type":"array","items":{"type":"string","minLength":1},"minItems":1,"description":"The variable elements of a trait in an array.","markdownDescription":"The variable elements of a trait in an array."},"display":{"type":"string","minLength":1,"description":"How the trait should display, if it cannot be trivially inferred from `trait` and `variables`. (Example: \"modular (P and grapple, or S and sweep)\".)","markdownDescription":"How the trait should display, if it cannot be trivially inferred from `trait` and `variables`. (Example: \"modular (P and grapple, or S and sweep)\".)"}},"required":["trait"],"additionalProperties":false,"description":"A trait with both keyword and variable elements.","markdownDescription":"A trait with both keyword and variable elements."},"minItems":1,"description":"An array of objects representing a list of traits.","markdownDescription":"An array of objects representing a list of traits."},"entries":{"type":"array","items":{"anyOf":[{"type":"string","minLength":1,"description":"A single paragraph that accepts in-line formatting via `@tag`s.","markdownDescription":"A single paragraph that accepts in-line formatting via `@tag`s."},{"type":"object","properties":{"type":{"type":"string","minLength":1}},"required":["type"],"additionalProperties":true}]},"minItems":1},"_tags":{"type":"object","properties":{"abilityBoosts":{"type":"object","properties":{"abilities":{"type":"object","additionalProperties":{"type":"boolean","const":true},"description":"An object containing the types of boost that the background can grant.","markdownDescription":"An object containing the types of boost that the background can grant."},"count":{"type":"integer","minimum":1,"maximum":3,"description":"The total number of boosts the background can grant.","markdownDescription":"The total number of boosts the background can grant."}},"required":["abilities","count"],"additionalProperties":false,"description":"The ability boosts the background grants.","markdownDescription":"The ability boosts the background grants."},"trainedSkills":{"type":"object","properties":{"skills":{"type":"object","additionalProperties":{"type":"boolean","const":true},"description":"A list of skills in which the background can grant proficiency.","markdownDescription":"A list of skills in which the background can grant proficiency."},"count":{"type":"integer","minimum":1,"maximum":4,"description":"The total number of distinct skill proficiencies the background can grant.","markdownDescription":"The total number of distinct skill proficiencies the background can grant."}},"required":["skills","count"],"additionalProperties":false,"description":"The skills in which the background can grant proficiency.","markdownDescription":"The skills in which the background can grant proficiency."},"gainedFeats":{"type":"object","properties":{"options":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1},"specifier":{"type":"string","minLength":1},"sourceID":{"$ref":"#/anyOf/0/anyOf/0/properties/source/properties/ID"}},"required":["name","sourceID"],"additionalProperties":false,"description":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell).","markdownDescription":"A direct reference to another statblock. The `type` of the content is typically inferred from the context in which it is invoked (e.g. a reference in a deity's \"Cleric Spells\" entry is a spell)."},"minItems":1,"description":"A list of feats the background can grant.","markdownDescription":"A list of feats the background can grant."},"count":{"type":"integer","minimum":1,"maximum":2,"description":"The total number of feats the background can grant.","markdownDescription":"The total number of feats the background can grant."}},"required":["options","count"],"additionalProperties":false,"description":"The feats the background grants.","markdownDescription":"The feats the background grants."},"gainedSpells":{"type":"object","properties":{"options":{"type":"array","items":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/_tags/properties/gainedFeats/properties/options/items"},"minItems":1,"description":"A list of spells the background can grant.","markdownDescription":"A list of spells the background can grant."},"count":{"type":"integer","minimum":1,"maximum":2,"description":"The total number of feats the background can grant.","markdownDescription":"The total number of feats the background can grant."}},"required":["options","count"],"additionalProperties":false,"description":"The spells the background grants.","markdownDescription":"The spells the background grants."},"misc":{"type":"object","properties":{"Grants ability":{"type":"boolean","const":true,"description":"The background background grants an active, voluntary ability.","markdownDescription":"The background background grants an active, voluntary ability."},"Grants equipment":{"type":"boolean","const":true,"description":"The background grants a free item (not just access or proficiency—the actual concrete thing).","markdownDescription":"The background grants a free item (not just access or proficiency—the actual concrete thing)."},"Grants language":{"type":"boolean","const":true,"description":"The background grants a language.","markdownDescription":"The background grants a language."},"Grants resistance":{"type":"boolean","const":true,"description":"The background grants a damage resistance.","markdownDescription":"The background grants a damage resistance."},"Grants sense":{"type":"boolean","const":true,"description":"The background grants a sense (e.g. darkvision, scent).","markdownDescription":"The background grants a sense (e.g. darkvision, scent)."},"Grants situational benefit":{"type":"boolean","const":true,"description":"The background grants a passive benefit that isn't otherwise categorisable. For example, this would apply if the background grants a +1 circumstance bonus to Seek on cloudy days.","markdownDescription":"The background grants a passive benefit that isn't otherwise categorisable. For example, this would apply if the background grants a +1 circumstance bonus to Seek on cloudy days."},"Has drawback":{"type":"boolean","const":true,"description":"The background comes with an objective, mandatory drawback, such as a penalty to some check or the inability to use an item or spell; not something that is both good and bad.","markdownDescription":"The background comes with an objective, mandatory drawback, such as a penalty to some check or the inability to use an item or spell; not something that is both good and bad."},"GM influence":{"type":"boolean","const":true,"description":"The GM determines some mechanical aspect of the background. For instance, this would apply if the background specifies that the GM alone chooses one of the boosts or the type of Lore skill it grants.","markdownDescription":"The GM determines some mechanical aspect of the background. For instance, this would apply if the background specifies that the GM alone chooses one of the boosts or the type of Lore skill it grants."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["entries"],"additionalProperties":false,"description":"An object describing the content for filtering, searching, and sorting.","markdownDescription":"An object describing the content for filtering, searching, and sorting."},"reference":{"type":"object","properties":{"type":{"type":"string","enum":["reprint","variant","replacement","extension"],"description":"`reprint`: The statblock is (near) identical to another one, and is intended to be as such.\n`variant`: The statblock is dependent on but distinct to the target (e.g. unique NPCs based on generic monsters).\n`replacement`: The statblock replaces the target entirely everywhere.\n`extension`: The statblock adds additional content to the target but doesn't supersede it (e.g. a new option added to a spell).","markdownDescription":"`reprint`: The statblock is (near) identical to another one, and is intended to be as such.\n`variant`: The statblock is dependent on but distinct to the target (e.g. unique NPCs based on generic monsters).\n`replacement`: The statblock replaces the target entirely everywhere.\n`extension`: The statblock adds additional content to the target but doesn't supersede it (e.g. a new option added to a spell)."},"target":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/_tags/properties/gainedFeats/properties/options/items"},"modifications":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","minLength":1,"description":"The type of modification being applied.","markdownDescription":"The type of modification being applied."},"target":{"type":"object","properties":{"property":{"type":"string","pattern":"^\\w+(?:\\.\\w+)+&","description":"A dot-separated hierarchy of properties leading to the target from the top-level `data` (e.g. \"castingTime.unit\").","markdownDescription":"A dot-separated hierarchy of properties leading to the target from the top-level `data` (e.g. \"castingTime.unit\")."},"name":{"type":"string","minLength":1,"description":"The `name` of the target object, if it is found in an array. This typically refers to arrays of `entryObject`s.","markdownDescription":"The `name` of the target object, if it is found in an array. This typically refers to arrays of `entryObject`s."}},"required":["property"],"additionalProperties":true},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"object","properties":{},"additionalProperties":true},{"type":"array"},{"type":"boolean"}],"description":"The modification value.","markdownDescription":"The modification value."}},"required":["type","target"],"additionalProperties":true,"description":"A single modification step.","markdownDescription":"A single modification step."},"minItems":1,"description":"An array of changes which, when applied consecutively, transforms the target content into the referring content.","markdownDescription":"An array of changes which, when applied consecutively, transforms the target content into the referring content."}},"required":["type","target"],"additionalProperties":false,"description":"An explicit reference to some other content, possibly with modifications applied on top. The referenced content's type is always assumed to be the same as the referring content.","markdownDescription":"An explicit reference to some other content, possibly with modifications applied on top. The referenced content's type is always assumed to be the same as the referring content."}},"required":["type","name","source"],"additionalProperties":false,"description":"A condition","markdownDescription":"A condition"},{"type":"object","properties":{"type":{"type":"string","const":"condition"},"name":{"$ref":"#/anyOf/0/anyOf/0/properties/name"},"source":{"$ref":"#/anyOf/0/anyOf/0/properties/source"},"data":{"type":"object","properties":{"entries":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/entries"},"_tags":{"type":"object","properties":{"group":{"type":"object","properties":{"Attitudes":{"type":"boolean","const":true,"description":"The condition is in the 'Attitudes' group (CRB p619).","markdownDescription":"The condition is in the 'Attitudes' group (CRB p619)."},"Death and Dying":{"type":"boolean","const":true,"description":"The condition is in the 'Death and Dying' group (CRB p619).","markdownDescription":"The condition is in the 'Death and Dying' group (CRB p619)."},"Degrees of Detection":{"type":"boolean","const":true,"description":"The condition is in the 'Degrees of Detection' group (CRB p619).","markdownDescription":"The condition is in the 'Degrees of Detection' group (CRB p619)."},"Lowered Abilities":{"type":"boolean","const":true,"description":"The condition is in the 'Lowered Abilities' group (CRB p619).","markdownDescription":"The condition is in the 'Lowered Abilities' group (CRB p619)."},"Senses":{"type":"boolean","const":true,"description":"The condition is in the 'Senses' group (CRB p619).","markdownDescription":"The condition is in the 'Senses' group (CRB p619)."}},"additionalProperties":{"type":"boolean","const":true},"description":"An object containing any groups the condition belongs to. The properties should be in title case.","markdownDescription":"An object containing any groups the condition belongs to. The properties should be in title case."}},"additionalProperties":false}},"required":["entries"],"additionalProperties":false,"description":"An object describing the content for filtering, searching, and sorting.","markdownDescription":"An object describing the content for filtering, searching, and sorting."},"reference":{"$ref":"#/anyOf/0/anyOf/0/properties/reference"}},"required":["type","name","source"],"additionalProperties":false,"description":"A condition","markdownDescription":"A condition"},{"type":"object","properties":{"type":{"type":"string","const":"domain"},"name":{"$ref":"#/anyOf/0/anyOf/0/properties/name"},"source":{"$ref":"#/anyOf/0/anyOf/0/properties/source"},"data":{"type":"object","properties":{"preamble":{"type":"string","minLength":1,"description":"The typically brief sentence or two of flavour text that describes the domain or otherwise provides guidance on its use.","markdownDescription":"The typically brief sentence or two of flavour text that describes the domain or otherwise provides guidance on its use."},"domainSpell":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/_tags/properties/gainedFeats/properties/options/items"},"advancedDomainSpell":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/_tags/properties/gainedFeats/properties/options/items"},"apocryphalSpell":{"type":"object","properties":{"name":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/name"},"specifier":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/specifier"},"sourceID":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/sourceID"}},"required":["name","sourceID"],"additionalProperties":false,"description":"A reference target to the domain's apocryphal spell (see Dark Archive p142)","markdownDescription":"A reference target to the domain's apocryphal spell (see Dark Archive p142)"},"advancedApocryphalSpell":{"type":"object","properties":{"name":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/name"},"specifier":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/specifier"},"sourceID":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/_tags/properties/gainedFeats/properties/options/items/properties/sourceID"}},"required":["name","sourceID"],"additionalProperties":false,"description":"The reference target to the domain's advanced apocryphal spell (see Dark Archive p142)","markdownDescription":"The reference target to the domain's advanced apocryphal spell (see Dark Archive p142)"}},"required":["domainSpell","advancedDomainSpell"],"additionalProperties":false},"reference":{"$ref":"#/anyOf/0/anyOf/0/properties/reference"}},"required":["type","name","source"],"additionalProperties":false,"description":"A domain (for a religion)","markdownDescription":"A domain (for a religion)"},{"type":"object","properties":{"type":{"type":"string","const":"event"},"name":{"$ref":"#/anyOf/0/anyOf/0/properties/name"},"source":{"$ref":"#/anyOf/0/anyOf/0/properties/source"},"data":{"type":"object","properties":{"level":{"type":"integer","minimum":-1,"description":"The event's level","markdownDescription":"The event's level"},"traits":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/traits"},"applicableSkills":{"type":"array","items":{"type":"object","properties":{"skill":{"type":"string","enum":["Acrobatics","Arcana","Athletics","Crafting","Deception","Diplomacy","Intimidation","Lore","Medicine","Nature","Occultism","Performance","Religion","Society","Stealth","Survival","Thievery"],"description":"The name of the skill (title case).","markdownDescription":"The name of the skill (title case)."},"variables":{"type":"array","items":{"type":"string","minLength":1,"pattern":"^[A-Z]"},"minItems":1,"description":"A skill's variable element (e.g. \"Accounting\" and \"Midwifery\" in \"Accounting or Midwifery Lore\").","markdownDescription":"A skill's variable element (e.g. \"Accounting\" and \"Midwifery\" in \"Accounting or Midwifery Lore\")."},"display":{"type":"string","minLength":1,"description":"How the skill should display, if it cannot be trivially inferred from `skill` and `variables`. (Example: \"Accounting and Midwifery Lore\".)","markdownDescription":"How the skill should display, if it cannot be trivially inferred from `skill` and `variables`. (Example: \"Accounting and Midwifery Lore\".)"}},"required":["skill"],"additionalProperties":false,"description":"A combined object to describe a type of skill referenced by other content.","markdownDescription":"A combined object to describe a type of skill referenced by other content."},"minItems":1,"description":"An array of objects representing the event's applicable skills.","markdownDescription":"An array of objects representing the event's applicable skills."},"entries":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/entries"}},"required":["level","entries"],"additionalProperties":false},"reference":{"$ref":"#/anyOf/0/anyOf/0/properties/reference"}},"required":["type","name","source"],"additionalProperties":false,"description":"An event","markdownDescription":"An event"},{"type":"object","properties":{"type":{"type":"string","const":"familiarAbility"},"name":{"$ref":"#/anyOf/0/anyOf/0/properties/name"},"source":{"$ref":"#/anyOf/0/anyOf/0/properties/source"},"data":{"type":"object","properties":{"abilityType":{"type":"string","enum":["Familiar","Master"],"description":"The familiar ability's type.","markdownDescription":"The familiar ability's type."},"entries":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/entries"},"_tags":{"type":"object","properties":{"misc":{"type":"object","properties":{"affectsCommunication":{"type":"boolean","const":true,"description":"The ability affects the familiar's capacity to communicate (e.g. by granting it languages).","markdownDescription":"The ability affects the familiar's capacity to communicate (e.g. by granting it languages)."},"affectsSenses":{"type":"boolean","const":true,"description":"The ability affects the familiar's senses or grants a new sense (e.g. darkvision, scent).","markdownDescription":"The ability affects the familiar's senses or grants a new sense (e.g. darkvision, scent)."},"affectsMovement":{"type":"boolean","const":true,"description":"The ability affects the familiar's capacity to move or grants a new Speed.","markdownDescription":"The ability affects the familiar's capacity to move or grants a new Speed."},"hasRequirement":{"type":"boolean","const":true,"description":"You or the familiar must satisfy a certain requirement to choose this ability.","markdownDescription":"You or the familiar must satisfy a certain requirement to choose this ability."},"grantsAbility":{"type":"boolean","const":true,"description":"The ability grants you or the familiar an active, voluntary ability.","markdownDescription":"The ability grants you or the familiar an active, voluntary ability."},"repeatable":{"type":"boolean","const":true,"description":"You can select this ability multiple times.","markdownDescription":"You can select this ability multiple times."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["abilityType","entries"],"additionalProperties":false,"description":"An object describing the content for filtering, searching, and sorting.","markdownDescription":"An object describing the content for filtering, searching, and sorting."},"reference":{"$ref":"#/anyOf/0/anyOf/0/properties/reference"}},"required":["type","name","source"],"additionalProperties":false,"description":"A familiar ability","markdownDescription":"A familiar ability"},{"type":"object","properties":{"type":{"type":"string","const":"relicGift"},"name":{"$ref":"#/anyOf/0/anyOf/0/properties/name"},"source":{"$ref":"#/anyOf/0/anyOf/0/properties/source"},"data":{"type":"object","properties":{"tier":{"type":"string","minLength":1,"pattern":"^[A-Z]","description":"The relic gift's tier (title case)","markdownDescription":"The relic gift's tier (title case)"},"traits":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/traits"},"aspects":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"The aspect's name","markdownDescription":"The aspect's name"},"note":{"type":"string","minLength":1,"description":"A bracketed note qualifying the aspect (e.g. the \"azata-themed\" in \"celestial (azata-themed)\").","markdownDescription":"A bracketed note qualifying the aspect (e.g. the \"azata-themed\" in \"celestial (azata-themed)\")."}},"required":["name"],"additionalProperties":false}},"prerequisites":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/entries/items/anyOf/0","description":"A single paragraph that accepts in-line formatting via `@tag`s.","markdownDescription":"A single paragraph that accepts in-line formatting via `@tag`s."},"entries":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/entries"},"_tags":{"type":"object","properties":{"itemTypes":{"type":"object","properties":{"Armor":{"type":"boolean","const":true,"description":"The relic must be a piece or suit of armour to have this gift.","markdownDescription":"The relic must be a piece or suit of armour to have this gift."},"Worn Item":{"type":"boolean","const":true,"description":"The relic must be a worn item to have this gift.","markdownDescription":"The relic must be a worn item to have this gift."},"Weapon":{"type":"boolean","const":true,"description":"The relic must be a weapon to have this gift.","markdownDescription":"The relic must be a weapon to have this gift."}},"additionalProperties":{"type":"boolean","const":true},"description":"An object containing the types of item the relic must be in order to have this gift. The properties should be in title case.","markdownDescription":"An object containing the types of item the relic must be in order to have this gift. The properties should be in title case."},"misc":{"type":"object","properties":{"Alters relic":{"type":"boolean","const":true,"description":"The gift permanently changes the relic's nature in some way.","markdownDescription":"The gift permanently changes the relic's nature in some way."},"Grants ability":{"type":"boolean","const":true,"description":"The gift grants the character a new, activatable ability (including spells).","markdownDescription":"The gift grants the character a new, activatable ability (including spells)."},"Grants passive attribute":{"type":"boolean","const":true,"description":"The gift grants the character a new Speed, a damage resistance, an automatic bonus, or another always-active ability.","markdownDescription":"The gift grants the character a new Speed, a damage resistance, an automatic bonus, or another always-active ability."},"Is rune":{"type":"boolean","const":true,"description":"The gift mimics the effect of a rune.","markdownDescription":"The gift mimics the effect of a rune."},"Soul seed":{"type":"boolean","const":true,"description":"The gift is \"particularly appropriate\" for soul seeds (SoM p230).","markdownDescription":"The gift is \"particularly appropriate\" for soul seeds (SoM p230)."}},"additionalProperties":false,"description":"Miscellaneous tags","markdownDescription":"Miscellaneous tags"}},"additionalProperties":false}},"required":["tier","aspects","entries"],"additionalProperties":false,"description":"An object describing the content for filtering, searching, and sorting.","markdownDescription":"An object describing the content for filtering, searching, and sorting."},"reference":{"$ref":"#/anyOf/0/anyOf/0/properties/reference"}},"required":["type","name","source"],"additionalProperties":false,"description":"A relic gift","markdownDescription":"A relic gift"},{"type":"object","properties":{"type":{"type":"string","const":"skill"},"name":{"$ref":"#/anyOf/0/anyOf/0/properties/name"},"source":{"$ref":"#/anyOf/0/anyOf/0/properties/source"},"data":{"type":"object","properties":{"entries":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/entries"}},"required":["entries"],"additionalProperties":false},"reference":{"$ref":"#/anyOf/0/anyOf/0/properties/reference"}},"required":["type","name","source","data"],"additionalProperties":false,"description":"A skill","markdownDescription":"A skill"}]},{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"license"},"ID":{"$ref":"#/anyOf/0/anyOf/0/properties/source/properties/ID","description":"The license's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.","markdownDescription":"The license's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"An abbreviation or other shortening of the license's `name` for display purposes.","markdownDescription":"An abbreviation or other shortening of the license's `name` for display purposes."},"short":{"type":"string","minLength":1,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the license's name","markdownDescription":"An object representing the license's name"},"data":{"type":"object","properties":{"entries":{"type":"array","items":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/entries/items"},"minItems":1,"description":"The full text of the license. Formatting may be used where it doesn't detract from its interpretation.","markdownDescription":"The full text of the license. Formatting may be used where it doesn't detract from its interpretation."}},"required":["entries"],"additionalProperties":false}},"required":["type","ID","title","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"source"},"ID":{"$ref":"#/anyOf/0/anyOf/0/properties/source/properties/ID","description":"The source's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.\n\nFor multi-part adventures, the standard is to use \"0\" for the player's guide (if any), and then \"#\" for each part, where \"#\" is the part's number.","markdownDescription":"The source's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem.\n\nFor multi-part adventures, the standard is to use \"0\" for the player's guide (if any), and then \"#\" for each part, where \"#\" is the part's number."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"The source's full, human-readable name. Title case is preferred but anything can be used within reason.","markdownDescription":"The source's full, human-readable name. Title case is preferred but anything can be used within reason."},"short":{"type":"string","minLength":1,"maxLength":8,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the source's name","markdownDescription":"An object representing the source's name"},"data":{"type":"object","properties":{"released":{"type":"string","format":"date","description":"The source's publication date (YYYY-MM-DD). For content with a staggered release or early-access program, use the date the source was first made publicly available.","markdownDescription":"The source's publication date (YYYY-MM-DD). For content with a staggered release or early-access program, use the date the source was first made publicly available."},"version":{"type":"string","minLength":1,"description":"The target version for the converted data (if any). This value serves akin to a `specifier` in case multiple distinct versions of the same source are maintained. Leave undefined if there has only ever been one version. (Examples: \"2nd Printing\", \"v1.2\", \"Revised 2025\")","markdownDescription":"The target version for the converted data (if any). This value serves akin to a `specifier` in case multiple distinct versions of the same source are maintained. Leave undefined if there has only ever been one version. (Examples: \"2nd Printing\", \"v1.2\", \"Revised 2025\")"},"errataed":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) of the source's most recent errata applied to Pf2ools' content. Leave undefined if the source has never been errataed.","markdownDescription":"The date (YYYY-MM-DD) of the source's most recent errata applied to Pf2ools' content. Leave undefined if the source has never been errataed."},"added":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) the source was first made available on the Pf2ools ecosystem (complete or otherwise).","markdownDescription":"The date (YYYY-MM-DD) the source was first made available on the Pf2ools ecosystem (complete or otherwise)."},"modified":{"type":"string","format":"date","description":"The date (YYYY-MM-DD) the source's content-data as maintained by the Pf2ools project was last modified.","markdownDescription":"The date (YYYY-MM-DD) the source's content-data as maintained by the Pf2ools project was last modified."},"URL":{"type":"string","format":"uri","description":"A website on which the content can be legally and publicly viewed, downloaded, or purchased. A first-party website (i.e. one controlled by the authors) is preferred. If the Pf2ools source is the authoritative version for distribution, you can use \"https://github.com/pf2ools/pf2ools-data\".","markdownDescription":"A website on which the content can be legally and publicly viewed, downloaded, or purchased. A first-party website (i.e. one controlled by the authors) is preferred. If the Pf2ools source is the authoritative version for distribution, you can use \"https://github.com/pf2ools/pf2ools-data\"."},"groupIDs":{"type":"array","items":{"$ref":"#/anyOf/0/anyOf/0/properties/source/properties/ID","description":"The `ID` of a source group.","markdownDescription":"The `ID` of a source group."},"minItems":1,"description":"A list of `ID`s of the source's parent groups (if any). This is used for a source that is part of a larger, clearly defined, multi-part series. For instance, \"Extinction Curse #1: The Show Must Go On\" belongs to the \"Extinction Curse\" series (\"EC\"), and \"Lost Omens: Travel Guide\" belongs to the \"Lost Omens\" series (\"LO\").","markdownDescription":"A list of `ID`s of the source's parent groups (if any). This is used for a source that is part of a larger, clearly defined, multi-part series. For instance, \"Extinction Curse #1: The Show Must Go On\" belongs to the \"Extinction Curse\" series (\"EC\"), and \"Lost Omens: Travel Guide\" belongs to the \"Lost Omens\" series (\"LO\")."},"requiredSourceIDs":{"type":"array","items":{"$ref":"#/anyOf/0/anyOf/0/properties/source/properties/ID","description":"The `ID` of the dependent homebrew source.","markdownDescription":"The `ID` of the dependent homebrew source."},"minItems":1,"description":"A list of `ID`s of other homebrew sources that this source requires. The requirement is strict: a source that adds a subclass to another, external homebrew class would list that class' source `ID`.","markdownDescription":"A list of `ID`s of other homebrew sources that this source requires. The requirement is strict: a source that adds a subclass to another, external homebrew class would list that class' source `ID`."},"licenseID":{"$ref":"#/anyOf/0/anyOf/0/properties/source/properties/ID","description":"The `ID` of the source's license.","markdownDescription":"The `ID` of the source's license."},"copyright":{"type":"array","items":{"$ref":"#/anyOf/0/anyOf/0/properties/data/properties/entries/items"},"minItems":1,"description":"Any additional copyright text associated with the source. For instance, the copyright notice that accompanies the OGLv1.0a license would be entered here (but not the license itself), as does the ORC license's attribution notice. Formatting may be used where it doesn't detract from its interpretation.","markdownDescription":"Any additional copyright text associated with the source. For instance, the copyright notice that accompanies the OGLv1.0a license would be entered here (but not the license itself), as does the ORC license's attribution notice. Formatting may be used where it doesn't detract from its interpretation."},"authors":{"type":"array","items":{"type":"string","description":"An author's name. Online handles should be reasonably indicated (e.g. \"Twitter: @ThatVauxs\", \"Discord: @spap\").","markdownDescription":"An author's name. Online handles should be reasonably indicated (e.g. \"Twitter: @ThatVauxs\", \"Discord: @spap\")."},"minItems":1,"description":"A list of unique authors as credited by the source itself.","markdownDescription":"A list of unique authors as credited by the source itself."},"publisher":{"type":"string","minLength":2,"description":"The name of the source's publishing company or group (e.g. \"Paizo\" or \"Roll for Combat\", but not a general marketplace like \"Pathfinder Infinite\").","markdownDescription":"The name of the source's publishing company or group (e.g. \"Paizo\" or \"Roll for Combat\", but not a general marketplace like \"Pathfinder Infinite\")."},"converters":{"type":"array","items":{"type":"string","minLength":2,"description":"A converter's name. Discord usernames are strongly preferred; other online handles should be reasonably indicated.","markdownDescription":"A converter's name. Discord usernames are strongly preferred; other online handles should be reasonably indicated."},"minItems":1,"description":"A list of unique Pf2ools contributors who converted this source. If multiple converters exist, choose one 'principal' to go first in the case of questions or bug reports. This is particularly used for homebrew, both for attributing work done and to help organise updates.","markdownDescription":"A list of unique Pf2ools contributors who converted this source. If multiple converters exist, choose one 'principal' to go first in the case of questions or bug reports. This is particularly used for homebrew, both for attributing work done and to help organise updates."}},"required":["released","added","modified","URL","licenseID"],"additionalProperties":false},"_tags":{"type":"object","properties":{"publicationType":{"type":"object","properties":{"Comic":{"type":"boolean","const":true,"description":"The source is content bundled with a comic.","markdownDescription":"The source is content bundled with a comic."},"Blog post":{"type":"boolean","const":true,"description":"The source is a blog post or another similar type of short, online article.","markdownDescription":"The source is a blog post or another similar type of short, online article."}},"additionalProperties":false,"description":"An object representing the type of publication the source can be categorised as. This is most relevant when the game content is bundled along with something that isn't a typical Pathfinder rulebook.","markdownDescription":"An object representing the type of publication the source can be categorised as. This is most relevant when the game content is bundled along with something that isn't a typical Pathfinder rulebook."},"status":{"type":"object","properties":{"Missing content":{"type":"boolean","const":true,"description":"This source is only partially converted right now (i.e. it lacks some content), but, one day, it could be completely up-to-date.","markdownDescription":"This source is only partially converted right now (i.e. it lacks some content), but, one day, it could be completely up-to-date."},"Missing tags":{"type":"boolean","const":true,"description":"The converted content this source contains isn't completely tagged, even if it all displays correctly.","markdownDescription":"The converted content this source contains isn't completely tagged, even if it all displays correctly."},"Invalid":{"type":"boolean","const":true,"description":"This source's data is invalid and either contains serious schema errors or is generally malformed. It exists for archival purposes only and is unmaintained.","markdownDescription":"This source's data is invalid and either contains serious schema errors or is generally malformed. It exists for archival purposes only and is unmaintained."}},"additionalProperties":false},"misc":{"type":"object","properties":{"legacyRuleset":{"type":"boolean","const":true,"description":"This source targets the original Pathfinder 2e ruleset, as published in the Core Rulebook (2019), and not as published in Player Core (2023).","markdownDescription":"This source targets the original Pathfinder 2e ruleset, as published in the Core Rulebook (2019), and not as published in Player Core (2023)."},"Official":{"type":"boolean","const":true,"description":"This source was created and published by Paizo as 'official' Pathfinder 2e content (that is, it's official insofar that something can be 'official').","markdownDescription":"This source was created and published by Paizo as 'official' Pathfinder 2e content (that is, it's official insofar that something can be 'official')."},"GM-facing":{"type":"boolean","const":true,"description":"This source is intended to be GM-facing, to the exclusion of players. This is typically due to it being an adventure, module, one-shot, scenario, or the like.","markdownDescription":"This source is intended to be GM-facing, to the exclusion of players. This is typically due to it being an adventure, module, one-shot, scenario, or the like."},"PFS-legal":{"type":"boolean","const":true,"description":"This source is legal for Pathfinder Society play.","markdownDescription":"This source is legal for Pathfinder Society play."},"Playtest":{"type":"boolean","const":true,"description":"This source contains playtest, early-access, or otherwise 'unfinished' content.","markdownDescription":"This source contains playtest, early-access, or otherwise 'unfinished' content."},"Ongoing":{"type":"boolean","const":true,"description":"This source is being continually expanded. The data only reflects content only up until the `errataed` date. This is used for 'monster a day' projects and the like, where the conversion may entail a substantial lag behind the publication.","markdownDescription":"This source is being continually expanded. The data only reflects content only up until the `errataed` date. This is used for 'monster a day' projects and the like, where the conversion may entail a substantial lag behind the publication."},"Deprecated":{"type":"boolean","const":true,"description":"This source has been wholly superseded by another version of the same content. This applies when a completely rewritten, revised version of the source exists; simple, minor modifications via errata do not.","markdownDescription":"This source has been wholly superseded by another version of the same content. This applies when a completely rewritten, revised version of the source exists; simple, minor modifications via errata do not."},"NSFW":{"type":"boolean","const":true,"description":"This source contains content of a particularly provocative, unsavoury, or otherwise adult-oriented nature.","markdownDescription":"This source contains content of a particularly provocative, unsavoury, or otherwise adult-oriented nature."}},"additionalProperties":false}},"additionalProperties":false,"description":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes.","markdownDescription":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes."}},"required":["type","ID","title","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"sourceGroup"},"ID":{"$ref":"#/anyOf/0/anyOf/0/properties/source/properties/ID","description":"The source group's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem (both sources and source groups).","markdownDescription":"The source group's identifying string for the computer. This must be only composed of alphanumeric characters and non-initial, non-terminal hyphens. It must be globally and case-insensitively unique across the Pf2ools ecosystem (both sources and source groups)."},"title":{"type":"object","properties":{"full":{"type":"string","minLength":1,"description":"The source group's full, human-readable name. Title case is preferred but anything can be used within reason.","markdownDescription":"The source group's full, human-readable name. Title case is preferred but anything can be used within reason."},"short":{"type":"string","minLength":1,"maxLength":8,"description":"An abbreviation or other shortening of the source's name for display purposes.","markdownDescription":"An abbreviation or other shortening of the source's name for display purposes."}},"required":["full","short"],"additionalProperties":false,"description":"An object representing the source group's name","markdownDescription":"An object representing the source group's name"},"data":{"type":"object","properties":{"publisher":{"type":"string","minLength":2,"description":"The name of the original, first-party publisher of the source group. Sources with publishers not matching this value are considered 'third-party' contributors to the source group.","markdownDescription":"The name of the original, first-party publisher of the source group. Sources with publishers not matching this value are considered 'third-party' contributors to the source group."}},"required":["publisher"],"additionalProperties":false},"_tags":{"type":"object","properties":{"misc":{"type":"object","properties":{"Adventure":{"type":"boolean","const":true,"description":"This source group is an adventure path or the like.","markdownDescription":"This source group is an adventure path or the like."},"Ongoing":{"type":"boolean","const":true,"description":"This source group is being continually expanded. Not all member-sources may exist on Pf2ools.","markdownDescription":"This source group is being continually expanded. Not all member-sources may exist on Pf2ools."}},"additionalProperties":false}},"required":["misc"],"additionalProperties":false,"description":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes.","markdownDescription":"This object contains a list of categories the source falls into, for sorting, searching, and filtering purposes."}},"required":["type","ID","title"],"additionalProperties":false,"description":"A `sourceGroup` object defines the existence of a group of sources. Tautology aside, this is used to describe adventure paths, book series, and the like.","markdownDescription":"A `sourceGroup` object defines the existence of a group of sources. Tautology aside, this is used to describe adventure paths, book series, and the like."}]}],"$schema":"http://json-schema.org/draft-07/schema#"} \ No newline at end of file diff --git a/_dist/zod/_bundle.d.ts b/_dist/zod/_bundle.d.ts index 0ecac89..dc87e1a 100644 --- a/_dist/zod/_bundle.d.ts +++ b/_dist/zod/_bundle.d.ts @@ -121,7 +121,7 @@ export declare const bundle: z.ZodObject<{ publisher?: string | undefined; converters?: [string, ...string[]] | undefined; }>; - tags: z.ZodOptional>; "Blog post": z.ZodOptional>; @@ -310,7 +310,7 @@ export declare const bundle: z.ZodObject<{ full: string; }; ID: string; - tags?: { + _tags?: { status?: { "Missing content"?: true | undefined; "Missing tags"?: true | undefined; @@ -355,7 +355,7 @@ export declare const bundle: z.ZodObject<{ full: string; }; ID: string; - tags?: { + _tags?: { status?: { "Missing content"?: true | undefined; "Missing tags"?: true | undefined; @@ -401,7 +401,7 @@ export declare const bundle: z.ZodObject<{ }, { publisher: string; }>>; - tags: z.ZodOptional>; Ongoing: z.ZodOptional>; @@ -449,7 +449,7 @@ export declare const bundle: z.ZodObject<{ data?: { publisher: string; } | undefined; - tags?: { + _tags?: { misc: { Ongoing?: true | undefined; Adventure?: true | undefined; @@ -465,6595 +465,260 @@ export declare const bundle: z.ZodObject<{ data?: { publisher: string; } | undefined; - tags?: { + _tags?: { misc: { Ongoing?: true | undefined; Adventure?: true | undefined; }; } | undefined; }>, "many">>; - background: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; + background: z.ZodOptional; - data: z.ZodObject<{ - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }, { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }>; - tags: z.ZodOptional, z.ZodLiteral<"free">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - abilities: Partial>; - count: number; - }, { - abilities: Partial>; - count: number; - }>>; - trainedSkills: z.ZodOptional, z.ZodLiteral<"Any">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - count: number; - skills: Partial>; - }, { - count: number; - skills: Partial>; - }>>; - gainedFeats: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }>>; - gainedSpells: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }>>; - misc: z.ZodOptional>; - "Grants equipment": z.ZodOptional>; - "Grants language": z.ZodOptional>; - "Grants resistance": z.ZodOptional>; - "Grants sense": z.ZodOptional>; - "Grants situational benefit": z.ZodOptional>; - "Has drawback": z.ZodOptional>; - "GM influence": z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }>, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }>, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }>>; - }>, "strict", z.ZodTypeAny, { - type: "background"; - data: { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; + }>, "many">>; + condition: z.ZodOptional>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }>, "many">>; - condition: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; + domain: z.ZodOptional; - data: z.ZodObject<{ - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - }, { - entries: (string | { - type: string; - })[]; - }>; - tags: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; - }, "strict", z.ZodTypeAny, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>>; - }>, "strict", z.ZodTypeAny, { - type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; + }>, "many">>; + event: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }>, "many">>; - divineIntercession: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; + familiarAbility: z.ZodOptional; - data: z.ZodEffects; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - preamble: z.ZodOptional]>, "many">>; - "Minor Boon": z.ZodOptional]>, "many">>; - "Moderate Boon": z.ZodOptional]>, "many">>; - "Major Boon": z.ZodOptional]>, "many">>; - "Minor Curse": z.ZodOptional]>, "many">>; - "Moderate Curse": z.ZodOptional]>, "many">>; - "Major Curse": z.ZodOptional]>, "many">>; - }, "strict", z.ZodTypeAny, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }>, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }>; - }>, "strict", z.ZodTypeAny, { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }, { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }>, "many">>; - domain: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"domain">; - data: z.ZodObject<{ - preamble: z.ZodOptional; - domainSpell: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - advancedDomainSpell: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - apocryphalSpell: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>>; - advancedApocryphalSpell: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }, { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }>; - }>, "strict", z.ZodTypeAny, { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }, { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }>, "many">>; - event: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"event">; - data: z.ZodObject<{ - level: z.ZodNumber; - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - applicableSkills: z.ZodOptional; - variables: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }, { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }>; - }>, "strict", z.ZodTypeAny, { - type: "event"; - data: { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }, { - type: "event"; - data: { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }>, "many">>; - familiarAbility: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"familiarAbility">; - data: z.ZodObject<{ - abilityType: z.ZodEnum<["Familiar", "Master"]>; - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }, { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }>; - tags: z.ZodOptional>; - affectsSenses: z.ZodOptional>; - affectsMovement: z.ZodOptional>; - hasRequirement: z.ZodOptional>; - grantsAbility: z.ZodOptional>; - repeatable: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }>, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }>, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }>>; - }>, "strict", z.ZodTypeAny, { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }, { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }>, "many">>; - relicGift: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"relicGift">; - data: z.ZodObject<{ - tier: z.ZodString; - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - aspects: z.ZodArray; - }, "strict", z.ZodTypeAny, { - name: string; - note?: string | undefined; - }, { - name: string; - note?: string | undefined; - }>, "many">; - prerequisites: z.ZodOptional; - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }, { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }>; - tags: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; - misc: z.ZodOptional>; - "Grants ability": z.ZodOptional>; - "Grants passive attribute": z.ZodOptional>; - "Is rune": z.ZodOptional>; - "Soul seed": z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }>, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>>; - }>, "strict", z.ZodTypeAny, { - type: "relicGift"; - data: { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }, { - type: "relicGift"; - data: { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }>, "many">>; - skill: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"skill">; - data: z.ZodObject<{ - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - }, { - entries: (string | { - type: string; - })[]; - }>; - }>, "strict", z.ZodTypeAny, { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }, { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }>, "many">>; -}, "strip", z.ZodTypeAny, { - source: { - type: "source"; - data: { - released: string; - added: string; - modified: string; - URL: string; - licenseID: string; - version?: string | undefined; - errataed?: string | undefined; - groupIDs?: [string, ...string[]] | undefined; - requiredSourceIDs?: [string, ...string[]] | undefined; - copyright?: (string | { - type: string; - })[] | undefined; - authors?: [string, ...string[]] | undefined; - publisher?: string | undefined; - converters?: [string, ...string[]] | undefined; - }; - title: { - short: string; - full: string; - }; - ID: string; - tags?: { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - } | undefined; - }[]; - background?: { - type: "background"; - data: { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - event?: { - type: "event"; - data: { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - license?: { - type: "license"; - data: { - entries: (string | { - type: string; - })[]; - }; - title: { - short: string; - full: string; - }; - ID: string; - }[] | undefined; - sourceGroup?: { - type: "sourceGroup"; - title: { - short: string; - full: string; - }; - ID: string; - data?: { - publisher: string; - } | undefined; - tags?: { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - } | undefined; - }[] | undefined; - condition?: { - type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - divineIntercession?: { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - domain?: { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - skill?: { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - familiarAbility?: { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - relicGift?: { - type: "relicGift"; - data: { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; -}, { - source: { - type: "source"; - data: { - released: string; - added: string; - modified: string; - URL: string; - licenseID: string; - version?: string | undefined; - errataed?: string | undefined; - groupIDs?: [string, ...string[]] | undefined; - requiredSourceIDs?: [string, ...string[]] | undefined; - copyright?: (string | { - type: string; - })[] | undefined; - authors?: [string, ...string[]] | undefined; - publisher?: string | undefined; - converters?: [string, ...string[]] | undefined; - }; - title: { - short: string; - full: string; - }; - ID: string; - tags?: { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - } | undefined; - }[]; - background?: { - type: "background"; - data: { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - event?: { - type: "event"; - data: { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - license?: { - type: "license"; - data: { - entries: (string | { - type: string; - })[]; - }; - title: { - short: string; - full: string; - }; - ID: string; - }[] | undefined; - sourceGroup?: { - type: "sourceGroup"; - title: { - short: string; - full: string; - }; - ID: string; - data?: { - publisher: string; - } | undefined; - tags?: { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - } | undefined; - }[] | undefined; - condition?: { - type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - divineIntercession?: { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - domain?: { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - skill?: { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - familiarAbility?: { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - relicGift?: { - type: "relicGift"; - data: { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; -}>; -export declare const anyBundle: z.ZodEffects; - ID: z.ZodEffects; - title: z.ZodObject<{ - full: z.ZodString; - short: z.ZodString; - }, "strict", z.ZodTypeAny, { - short: string; - full: string; - }, { - short: string; - full: string; - }>; - data: z.ZodObject<{ - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - }, { - entries: (string | { - type: string; - })[]; - }>; - }, "strict", z.ZodTypeAny, { - type: "license"; - data: { - entries: (string | { - type: string; - })[]; - }; - title: { - short: string; - full: string; - }; - ID: string; - }, { - type: "license"; - data: { - entries: (string | { - type: string; - })[]; - }; - title: { - short: string; - full: string; - }; - ID: string; - }>, "many">>>; - source: z.ZodOptional; - ID: z.ZodEffects; - title: z.ZodObject<{ - full: z.ZodEffects; - short: z.ZodString; - }, "strict", z.ZodTypeAny, { - short: string; - full: string; - }, { - short: string; - full: string; - }>; - data: z.ZodObject<{ - released: z.ZodString; - version: z.ZodOptional; - errataed: z.ZodOptional; - added: z.ZodString; - modified: z.ZodString; - URL: z.ZodString; - groupIDs: z.ZodOptional, "atleastone">, [string, ...string[]], [string, ...string[]]>>; - requiredSourceIDs: z.ZodOptional, "atleastone">, [string, ...string[]], [string, ...string[]]>>; - licenseID: z.ZodEffects; - copyright: z.ZodOptional]>, "many">>; - authors: z.ZodOptional, [string, ...string[]], [string, ...string[]]>>; - publisher: z.ZodOptional; - converters: z.ZodOptional, [string, ...string[]], [string, ...string[]]>>; - }, "strict", z.ZodTypeAny, { - released: string; - added: string; - modified: string; - URL: string; - licenseID: string; - version?: string | undefined; - errataed?: string | undefined; - groupIDs?: [string, ...string[]] | undefined; - requiredSourceIDs?: [string, ...string[]] | undefined; - copyright?: (string | { - type: string; - })[] | undefined; - authors?: [string, ...string[]] | undefined; - publisher?: string | undefined; - converters?: [string, ...string[]] | undefined; - }, { - released: string; - added: string; - modified: string; - URL: string; - licenseID: string; - version?: string | undefined; - errataed?: string | undefined; - groupIDs?: [string, ...string[]] | undefined; - requiredSourceIDs?: [string, ...string[]] | undefined; - copyright?: (string | { - type: string; - })[] | undefined; - authors?: [string, ...string[]] | undefined; - publisher?: string | undefined; - converters?: [string, ...string[]] | undefined; - }>; - tags: z.ZodOptional>; - "Blog post": z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - Comic?: true | undefined; - "Blog post"?: true | undefined; - }, { - Comic?: true | undefined; - "Blog post"?: true | undefined; - }>, { - Comic?: true | undefined; - "Blog post"?: true | undefined; - }, { - Comic?: true | undefined; - "Blog post"?: true | undefined; - }>>; - status: z.ZodOptional>; - "Missing tags": z.ZodOptional>; - Invalid: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - }, { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - }>, { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - }, { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - }>>; - misc: z.ZodOptional>; - Official: z.ZodOptional>; - "GM-facing": z.ZodOptional>; - "PFS-legal": z.ZodOptional>; - Playtest: z.ZodOptional>; - Ongoing: z.ZodOptional>; - Deprecated: z.ZodOptional>; - NSFW: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - }, { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - }>, { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - }, { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - }, { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - }>, { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - }, { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - type: "source"; - data: { - released: string; - added: string; - modified: string; - URL: string; - licenseID: string; - version?: string | undefined; - errataed?: string | undefined; - groupIDs?: [string, ...string[]] | undefined; - requiredSourceIDs?: [string, ...string[]] | undefined; - copyright?: (string | { - type: string; - })[] | undefined; - authors?: [string, ...string[]] | undefined; - publisher?: string | undefined; - converters?: [string, ...string[]] | undefined; - }; - title: { - short: string; - full: string; - }; - ID: string; - tags?: { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - } | undefined; - }, { - type: "source"; - data: { - released: string; - added: string; - modified: string; - URL: string; - licenseID: string; - version?: string | undefined; - errataed?: string | undefined; - groupIDs?: [string, ...string[]] | undefined; - requiredSourceIDs?: [string, ...string[]] | undefined; - copyright?: (string | { - type: string; - })[] | undefined; - authors?: [string, ...string[]] | undefined; - publisher?: string | undefined; - converters?: [string, ...string[]] | undefined; - }; - title: { - short: string; - full: string; - }; - ID: string; - tags?: { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - } | undefined; - }>, "many">>; - sourceGroup: z.ZodOptional; - ID: z.ZodEffects; - title: z.ZodObject<{ - full: z.ZodString; - short: z.ZodString; - }, "strict", z.ZodTypeAny, { - short: string; - full: string; - }, { - short: string; - full: string; - }>; - data: z.ZodOptional, { - publisher: string; - }, { - publisher: string; - }>>; - tags: z.ZodOptional>; - Ongoing: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }, { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }>, { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }, { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }>; - }, "strict", z.ZodTypeAny, { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - }, { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - }>, { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - }, { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - }>>; - }, "strict", z.ZodTypeAny, { - type: "sourceGroup"; - title: { - short: string; - full: string; - }; - ID: string; - data?: { - publisher: string; - } | undefined; - tags?: { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - } | undefined; - }, { - type: "sourceGroup"; - title: { - short: string; - full: string; - }; - ID: string; - data?: { - publisher: string; - } | undefined; - tags?: { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - } | undefined; - }>, "many">>>; - background: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"background">; - data: z.ZodObject<{ - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }, { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }>; - tags: z.ZodOptional, z.ZodLiteral<"free">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - abilities: Partial>; - count: number; - }, { - abilities: Partial>; - count: number; - }>>; - trainedSkills: z.ZodOptional, z.ZodLiteral<"Any">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - count: number; - skills: Partial>; - }, { - count: number; - skills: Partial>; - }>>; - gainedFeats: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }>>; - gainedSpells: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }>>; - misc: z.ZodOptional>; - "Grants equipment": z.ZodOptional>; - "Grants language": z.ZodOptional>; - "Grants resistance": z.ZodOptional>; - "Grants sense": z.ZodOptional>; - "Grants situational benefit": z.ZodOptional>; - "Has drawback": z.ZodOptional>; - "GM influence": z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }>, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }>, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }>>; - }>, "strict", z.ZodTypeAny, { - type: "background"; - data: { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }, { - type: "background"; - data: { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }>, "many">>>; - condition: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"condition">; - data: z.ZodObject<{ - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - }, { - entries: (string | { - type: string; - })[]; - }>; - tags: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; - }, "strict", z.ZodTypeAny, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>>; - }>, "strict", z.ZodTypeAny, { - type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }, { - type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }>, "many">>>; - divineIntercession: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"divineIntercession">; - data: z.ZodEffects; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - preamble: z.ZodOptional]>, "many">>; - "Minor Boon": z.ZodOptional]>, "many">>; - "Moderate Boon": z.ZodOptional]>, "many">>; - "Major Boon": z.ZodOptional]>, "many">>; - "Minor Curse": z.ZodOptional]>, "many">>; - "Moderate Curse": z.ZodOptional]>, "many">>; - "Major Curse": z.ZodOptional]>, "many">>; - }, "strict", z.ZodTypeAny, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }>, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }>; - }>, "strict", z.ZodTypeAny, { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }, { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }>, "many">>>; - domain: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; + [x: string]: any; + }>, "many">>; + relicGift: z.ZodOptional; - data: z.ZodObject<{ - preamble: z.ZodOptional; - domainSpell: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - advancedDomainSpell: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - apocryphalSpell: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>>; - advancedApocryphalSpell: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }, { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }>; - }>, "strict", z.ZodTypeAny, { - type: "domain"; + [x: string]: any; + }>, "many">>; + skill: z.ZodOptional, "many">>; +}, "strip", z.ZodTypeAny, { + source: { + type: "source"; data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; + released: string; + added: string; + modified: string; + URL: string; + licenseID: string; + version?: string | undefined; + errataed?: string | undefined; + groupIDs?: [string, ...string[]] | undefined; + requiredSourceIDs?: [string, ...string[]] | undefined; + copyright?: (string | { + type: string; + })[] | undefined; + authors?: [string, ...string[]] | undefined; + publisher?: string | undefined; + converters?: [string, ...string[]] | undefined; }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + title: { + short: string; + full: string; }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }, { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; + ID: string; + _tags?: { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; + misc?: { + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; } | undefined; - }>, "many">>>; - event: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"event">; - data: z.ZodObject<{ - level: z.ZodNumber; - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - applicableSkills: z.ZodOptional; - variables: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }, { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }>; - }>, "strict", z.ZodTypeAny, { - type: "event"; + }[]; + background?: { + [x: string]: any; + }[] | undefined; + event?: { + [x: string]: any; + }[] | undefined; + license?: { + type: "license"; data: { entries: (string | { type: string; })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; }; - source: { - ID: string; - page?: number | undefined; + title: { + short: string; + full: string; }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + ID: string; + }[] | undefined; + sourceGroup?: { + type: "sourceGroup"; + title: { + short: string; + full: string; }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; + ID: string; + data?: { + publisher: string; + } | undefined; + _tags?: { + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; }; - modifications?: { + } | undefined; + }[] | undefined; + condition?: { + [x: string]: any; + }[] | undefined; + domain?: { + [x: string]: any; + }[] | undefined; + skill?: { + [x: string]: any; + }[] | undefined; + familiarAbility?: { + [x: string]: any; + }[] | undefined; + relicGift?: { + [x: string]: any; + }[] | undefined; +}, { + source: { + type: "source"; + data: { + released: string; + added: string; + modified: string; + URL: string; + licenseID: string; + version?: string | undefined; + errataed?: string | undefined; + groupIDs?: [string, ...string[]] | undefined; + requiredSourceIDs?: [string, ...string[]] | undefined; + copyright?: (string | { type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; + })[] | undefined; + authors?: [string, ...string[]] | undefined; + publisher?: string | undefined; + converters?: [string, ...string[]] | undefined; + }; + title: { + short: string; + full: string; + }; + ID: string; + _tags?: { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; + misc?: { + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; + } | undefined; } | undefined; - }, { - type: "event"; + }[]; + background?: { + [x: string]: any; + }[] | undefined; + event?: { + [x: string]: any; + }[] | undefined; + license?: { + type: "license"; data: { entries: (string | { type: string; })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; }; - source: { - ID: string; - page?: number | undefined; + title: { + short: string; + full: string; }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + ID: string; + }[] | undefined; + sourceGroup?: { + type: "sourceGroup"; + title: { + short: string; + full: string; }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; + ID: string; + data?: { + publisher: string; + } | undefined; + _tags?: { + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; } | undefined; - }>, "many">>>; - familiarAbility: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; + }[] | undefined; + condition?: { + [x: string]: any; + }[] | undefined; + domain?: { + [x: string]: any; + }[] | undefined; + skill?: { + [x: string]: any; + }[] | undefined; + familiarAbility?: { + [x: string]: any; + }[] | undefined; + relicGift?: { + [x: string]: any; + }[] | undefined; +}>; +export declare const anyBundle: z.ZodEffects; + ID: z.ZodEffects; + title: z.ZodObject<{ + full: z.ZodString; + short: z.ZodString; }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; + short: string; + full: string; }, { - ID: string; - page?: number | undefined; + short: string; + full: string; }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"familiarAbility">; data: z.ZodObject<{ - abilityType: z.ZodEnum<["Familiar", "Master"]>; entries: z.ZodArray; - tags: z.ZodOptional>; - affectsSenses: z.ZodOptional>; - affectsMovement: z.ZodOptional>; - hasRequirement: z.ZodOptional>; - grantsAbility: z.ZodOptional>; - repeatable: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }>, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }>, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }>>; - }>, "strict", z.ZodTypeAny, { - type: "familiarAbility"; + }, "strict", z.ZodTypeAny, { + type: "license"; data: { entries: (string | { type: string; })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + title: { + short: string; + full: string; }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + ID: string; }, { - type: "familiarAbility"; + type: "license"; data: { entries: (string | { type: string; })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + title: { + short: string; + full: string; }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + ID: string; }>, "many">>>; - relicGift: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; + source: z.ZodOptional; + ID: z.ZodEffects; + title: z.ZodObject<{ + full: z.ZodEffects; + short: z.ZodString; }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; + short: string; + full: string; }, { - ID: string; - page?: number | undefined; + short: string; + full: string; }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; + errataed: z.ZodOptional; + added: z.ZodString; + modified: z.ZodString; + URL: z.ZodString; + groupIDs: z.ZodOptional, "atleastone">, [string, ...string[]], [string, ...string[]]>>; + requiredSourceIDs: z.ZodOptional, "atleastone">, [string, ...string[]], [string, ...string[]]>>; + licenseID: z.ZodEffects; + copyright: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; }, "strip", z.ZodTypeAny, { type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }, { type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; + }>]>, "many">>; + authors: z.ZodOptional, [string, ...string[]], [string, ...string[]]>>; + publisher: z.ZodOptional; + converters: z.ZodOptional, [string, ...string[]], [string, ...string[]]>>; }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { + released: string; + added: string; + modified: string; + URL: string; + licenseID: string; + version?: string | undefined; + errataed?: string | undefined; + groupIDs?: [string, ...string[]] | undefined; + requiredSourceIDs?: [string, ...string[]] | undefined; + copyright?: (string | { type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; + })[] | undefined; + authors?: [string, ...string[]] | undefined; + publisher?: string | undefined; + converters?: [string, ...string[]] | undefined; }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { + released: string; + added: string; + modified: string; + URL: string; + licenseID: string; + version?: string | undefined; + errataed?: string | undefined; + groupIDs?: [string, ...string[]] | undefined; + requiredSourceIDs?: [string, ...string[]] | undefined; + copyright?: (string | { type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"relicGift">; - data: z.ZodObject<{ - tier: z.ZodString; - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; + })[] | undefined; + authors?: [string, ...string[]] | undefined; + publisher?: string | undefined; + converters?: [string, ...string[]] | undefined; + }>; + _tags: z.ZodOptional>; + "Blog post": z.ZodOptional>; }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; + Comic?: true | undefined; + "Blog post"?: true | undefined; + }, { + Comic?: true | undefined; + "Blog post"?: true | undefined; + }>, { + Comic?: true | undefined; + "Blog post"?: true | undefined; }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - aspects: z.ZodArray; + Comic?: true | undefined; + "Blog post"?: true | undefined; + }>>; + status: z.ZodOptional>; + "Missing tags": z.ZodOptional>; + Invalid: z.ZodOptional>; }, "strict", z.ZodTypeAny, { - name: string; - note?: string | undefined; + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; }, { - name: string; - note?: string | undefined; - }>, "many">; - prerequisites: z.ZodOptional; - entries: z.ZodArray, { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; }, { - type: string; - }>]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }, { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }>; - tags: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + }>>; misc: z.ZodOptional>; - "Grants ability": z.ZodOptional>; - "Grants passive attribute": z.ZodOptional>; - "Is rune": z.ZodOptional>; - "Soul seed": z.ZodOptional>; + legacyRuleset: z.ZodOptional>; + Official: z.ZodOptional>; + "GM-facing": z.ZodOptional>; + "PFS-legal": z.ZodOptional>; + Playtest: z.ZodOptional>; + Ongoing: z.ZodOptional>; + Deprecated: z.ZodOptional>; + NSFW: z.ZodOptional>; }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; }>, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; }>>; }, "strict", z.ZodTypeAny, { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; }, { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; }>, { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; }, { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; }>>; - }>, "strict", z.ZodTypeAny, { - type: "relicGift"; + }, "strict", z.ZodTypeAny, { + type: "source"; data: { - entries: (string | { + released: string; + added: string; + modified: string; + URL: string; + licenseID: string; + version?: string | undefined; + errataed?: string | undefined; + groupIDs?: [string, ...string[]] | undefined; + requiredSourceIDs?: [string, ...string[]] | undefined; + copyright?: (string | { type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; + })[] | undefined; + authors?: [string, ...string[]] | undefined; + publisher?: string | undefined; + converters?: [string, ...string[]] | undefined; }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + title: { + short: string; + full: string; }; - tags?: { + ID: string; + _tags?: { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; } | undefined; }, { - type: "relicGift"; + type: "source"; data: { - entries: (string | { + released: string; + added: string; + modified: string; + URL: string; + licenseID: string; + version?: string | undefined; + errataed?: string | undefined; + groupIDs?: [string, ...string[]] | undefined; + requiredSourceIDs?: [string, ...string[]] | undefined; + copyright?: (string | { type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; + })[] | undefined; + authors?: [string, ...string[]] | undefined; + publisher?: string | undefined; + converters?: [string, ...string[]] | undefined; }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + title: { + short: string; + full: string; }; - tags?: { + ID: string; + _tags?: { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; } | undefined; - }>, "many">>>; - skill: z.ZodOptional; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; + }>, "many">>; + sourceGroup: z.ZodOptional; + ID: z.ZodEffects; + title: z.ZodObject<{ + full: z.ZodString; + short: z.ZodString; }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + short: string; + full: string; }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + short: string; + full: string; }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; + data: z.ZodOptional; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; + publisher: string; + }>, { + publisher: string; + }, { + publisher: string; + }>>; + _tags: z.ZodOptional>; + Ongoing: z.ZodOptional>; }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + Ongoing?: true | undefined; + Adventure?: true | undefined; }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + Ongoing?: true | undefined; + Adventure?: true | undefined; }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + Ongoing?: true | undefined; + Adventure?: true | undefined; }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; + Ongoing?: true | undefined; + Adventure?: true | undefined; + }>; }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; + }; + }>, { + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; - }, { - type: z.ZodLiteral<"skill">; - data: z.ZodObject<{ - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; }, { - entries: (string | { - type: string; - })[]; - }>; - }>, "strict", z.ZodTypeAny, { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; + }; + }>>; + }, "strict", z.ZodTypeAny, { + type: "sourceGroup"; + title: { + short: string; + full: string; }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; + ID: string; + data?: { + publisher: string; + } | undefined; + _tags?: { + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; } | undefined; }, { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + type: "sourceGroup"; + title: { + short: string; + full: string; }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; + ID: string; + data?: { + publisher: string; + } | undefined; + _tags?: { + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; } | undefined; }>, "many">>>; + background: z.ZodOptional, "many">>>; + condition: z.ZodOptional, "many">>>; + domain: z.ZodOptional, "many">>>; + event: z.ZodOptional, "many">>>; + familiarAbility: z.ZodOptional, "many">>>; + relicGift: z.ZodOptional, "many">>>; + skill: z.ZodOptional, "many">>>; }, "strip", z.ZodTypeAny, { source?: { type: "source"; @@ -7921,7 +1237,7 @@ export declare const anyBundle: z.ZodEffects>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; event?: { - type: "event"; - data: { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; license?: { type: "license"; @@ -8085,7 +1288,7 @@ export declare const anyBundle: z.ZodEffects>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - divineIntercession?: { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; domain?: { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; skill?: { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; familiarAbility?: { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; relicGift?: { - type: "relicGift"; - data: { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; }, { source?: { @@ -8404,7 +1335,7 @@ export declare const anyBundle: z.ZodEffects>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - event?: { - type: "event"; - data: { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - license?: { - type: "license"; - data: { - entries: (string | { - type: string; - })[]; - }; - title: { - short: string; - full: string; - }; - ID: string; - }[] | undefined; - sourceGroup?: { - type: "sourceGroup"; - title: { - short: string; - full: string; - }; - ID: string; - data?: { - publisher: string; - } | undefined; - tags?: { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - } | undefined; - }[] | undefined; - condition?: { - type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - divineIntercession?: { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - domain?: { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - skill?: { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - familiarAbility?: { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; + NSFW?: true | undefined; } | undefined; } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; }[] | undefined; - relicGift?: { - type: "relicGift"; + background?: { + [x: string]: any; + }[] | undefined; + event?: { + [x: string]: any; + }[] | undefined; + license?: { + type: "license"; data: { entries: (string | { type: string; })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; }; - source: { - ID: string; - page?: number | undefined; + title: { + short: string; + full: string; }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + ID: string; + }[] | undefined; + sourceGroup?: { + type: "sourceGroup"; + title: { + short: string; + full: string; }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; + ID: string; + data?: { + publisher: string; } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; + _tags?: { + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; } | undefined; }[] | undefined; + condition?: { + [x: string]: any; + }[] | undefined; + domain?: { + [x: string]: any; + }[] | undefined; + skill?: { + [x: string]: any; + }[] | undefined; + familiarAbility?: { + [x: string]: any; + }[] | undefined; + relicGift?: { + [x: string]: any; + }[] | undefined; }>, { source?: { type: "source"; @@ -8887,7 +1433,7 @@ export declare const anyBundle: z.ZodEffects>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; event?: { - type: "event"; - data: { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; license?: { type: "license"; @@ -9051,7 +1484,7 @@ export declare const anyBundle: z.ZodEffects>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - divineIntercession?: { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; domain?: { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; skill?: { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; familiarAbility?: { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; relicGift?: { - type: "relicGift"; - data: { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; }, { source?: { @@ -9370,7 +1531,7 @@ export declare const anyBundle: z.ZodEffects>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; event?: { - type: "event"; - data: { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; license?: { type: "license"; @@ -9534,7 +1582,7 @@ export declare const anyBundle: z.ZodEffects>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; - }[] | undefined; - divineIntercession?: { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; domain?: { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; skill?: { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; familiarAbility?: { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; relicGift?: { - type: "relicGift"; - data: { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; + [x: string]: any; }[] | undefined; }>; diff --git a/_dist/zod/_bundle.js b/_dist/zod/_bundle.js index 27d15ff..030e6a9 100644 --- a/_dist/zod/_bundle.js +++ b/_dist/zod/_bundle.js @@ -1,28 +1,27 @@ -// This file was generated by scripts/generate-zod-combinedTypes.js at Sat, 27 Apr 2024 00:53:14 GMT +// This file was generated by scripts/generate-zod-combinedTypes.js at Thu, 16 May 2024 00:49:20 GMT import { z } from "zod"; import { license } from "./license.js"; import { source } from "./source.js"; import { sourceGroup } from "./sourceGroup.js"; import { background } from "./content/background.js"; import { condition } from "./content/condition.js"; -import { divineIntercession } from "./content/divineIntercession.js"; import { domain } from "./content/domain.js"; import { event } from "./content/event.js"; import { familiarAbility } from "./content/familiarAbility.js"; import { relicGift } from "./content/relicGift.js"; import { skill } from "./content/skill.js"; +const refineContent = (content) => content.refine((content) => (content.reference ? !!content.data !== !!content.reference.modifications : content.data), "`data` and `reference.modifications` cannot be used simultaneously; choose one method to describe the content."); export const bundle = z.object({ license: z.array(license).min(1).optional(), source: z.array(source).min(1), sourceGroup: z.array(sourceGroup).min(1).optional(), - background: z.array(background).min(1).optional(), - condition: z.array(condition).min(1).optional(), - divineIntercession: z.array(divineIntercession).min(1).optional(), - domain: z.array(domain).min(1).optional(), - event: z.array(event).min(1).optional(), - familiarAbility: z.array(familiarAbility).min(1).optional(), - relicGift: z.array(relicGift).min(1).optional(), - skill: z.array(skill).min(1).optional(), + background: z.array(refineContent(background)).min(1).optional(), + condition: z.array(refineContent(condition)).min(1).optional(), + domain: z.array(refineContent(domain)).min(1).optional(), + event: z.array(refineContent(event)).min(1).optional(), + familiarAbility: z.array(refineContent(familiarAbility)).min(1).optional(), + relicGift: z.array(refineContent(relicGift)).min(1).optional(), + skill: z.array(refineContent(skill)).min(1).optional(), }); import { nonEmpty } from "./utils/nonEmpty.js"; export const anyBundle = bundle.partial().refine(...nonEmpty); diff --git a/_dist/zod/_content.d.ts b/_dist/zod/_content.d.ts index babbd19..bfaa7e1 100644 --- a/_dist/zod/_content.d.ts +++ b/_dist/zod/_content.d.ts @@ -1,5 +1,5 @@ import { z } from "zod"; -export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject; @@ -135,10 +135,9 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { type: z.ZodLiteral<"background">; - data: z.ZodObject<{ + data: z.ZodOptional, string[], string[]>>; @@ -167,10 +166,330 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject]>, "many">; + _tags: z.ZodOptional, z.ZodLiteral<"Free">]>, z.ZodLiteral>, Partial>, Partial>>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + abilities: Partial>; + count: number; + }, { + abilities: Partial>; + count: number; + }>>; + trainedSkills: z.ZodOptional, z.ZodLiteral<"Any">]>, z.ZodLiteral>, Partial>, Partial>>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + count: number; + skills: Partial>; + }, { + count: number; + skills: Partial>; + }>>; + gainedFeats: z.ZodOptional; + sourceID: z.ZodEffects; + }, "strict", z.ZodTypeAny, { + name: string; + sourceID: string; + specifier?: string | undefined; + }, { + name: string; + sourceID: string; + specifier?: string | undefined; + }>, "many">, { + name: string; + sourceID: string; + specifier?: string | undefined; + }[], { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }>>; + gainedSpells: z.ZodOptional; + sourceID: z.ZodEffects; + }, "strict", z.ZodTypeAny, { + name: string; + sourceID: string; + specifier?: string | undefined; + }, { + name: string; + sourceID: string; + specifier?: string | undefined; + }>, "many">, { + name: string; + sourceID: string; + specifier?: string | undefined; + }[], { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }>>; + misc: z.ZodOptional>; + "Grants equipment": z.ZodOptional>; + "Grants language": z.ZodOptional>; + "Grants resistance": z.ZodOptional>; + "Grants sense": z.ZodOptional>; + "Grants situational benefit": z.ZodOptional>; + "Has drawback": z.ZodOptional>; + "GM influence": z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }>, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }>>; + }, "strict", z.ZodTypeAny, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }>, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }>>; }, "strict", z.ZodTypeAny, { entries: (string | { type: string; })[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + } | undefined; traits?: { trait: string; display?: string | undefined; @@ -180,308 +499,50 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + } | undefined; traits?: { trait: string; display?: string | undefined; variables?: string[] | undefined; }[] | undefined; - }>; - tags: z.ZodOptional, z.ZodLiteral<"free">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - abilities: Partial>; - count: number; - }, { - abilities: Partial>; - count: number; - }>>; - trainedSkills: z.ZodOptional, z.ZodLiteral<"Any">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - count: number; - skills: Partial>; - }, { - count: number; - skills: Partial>; - }>>; - gainedFeats: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }>>; - gainedSpells: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }>>; - misc: z.ZodOptional>; - "Grants equipment": z.ZodOptional>; - "Grants language": z.ZodOptional>; - "Grants resistance": z.ZodOptional>; - "Grants sense": z.ZodOptional>; - "Grants situational benefit": z.ZodOptional>; - "Has drawback": z.ZodOptional>; - "GM influence": z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }>, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }>, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; }>>; }>, "strict", z.ZodTypeAny, { type: "background"; - data: { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; source: { ID: string; page?: number | undefined; @@ -491,41 +552,51 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -545,16 +616,6 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -752,10 +823,9 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { type: z.ZodLiteral<"condition">; - data: z.ZodObject<{ + data: z.ZodOptional]>, "many">; + _tags: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, "strip", z.ZodLiteral, z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">>>; + }, "strict", z.ZodTypeAny, { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }, { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }>, { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }, { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }>>; }, "strict", z.ZodTypeAny, { entries: (string | { type: string; })[]; + _tags?: { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; }, { entries: (string | { type: string; })[]; - }>; - tags: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; - }, "strict", z.ZodTypeAny, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; + _tags?: { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; }>>; }>, "strict", z.ZodTypeAny, { type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; source: { ID: string; page?: number | undefined; @@ -865,14 +948,19 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -892,11 +980,6 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -1067,11 +1155,11 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { - type: z.ZodLiteral<"divineIntercession">; - data: z.ZodEffects; + data: z.ZodOptional; + domainSpell: z.ZodObject<{ name: z.ZodString; specifier: z.ZodOptional; sourceID: z.ZodEffects; @@ -1084,194 +1172,92 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject; - preamble: z.ZodOptional]>, "many">>; - "Minor Boon": z.ZodOptional]>, "many">>; - "Moderate Boon": z.ZodOptional]>, "many">>; - "Major Boon": z.ZodOptional]>, "many">>; - "Minor Curse": z.ZodOptional; + sourceID: z.ZodEffects; + }, "strict", z.ZodTypeAny, { + name: string; + sourceID: string; + specifier?: string | undefined; }, { - type: string; - }>]>, "many">>; - "Moderate Curse": z.ZodOptional; + apocryphalSpell: z.ZodOptional; + sourceID: z.ZodEffects; + }, "strict", z.ZodTypeAny, { + name: string; + sourceID: string; + specifier?: string | undefined; }, { - type: string; - }>]>, "many">>; - "Major Curse": z.ZodOptional>; + advancedApocryphalSpell: z.ZodOptional; + sourceID: z.ZodEffects; + }, "strict", z.ZodTypeAny, { + name: string; + sourceID: string; + specifier?: string | undefined; }, { - type: string; - }>]>, "many">>; + name: string; + sourceID: string; + specifier?: string | undefined; + }>>; }, "strict", z.ZodTypeAny, { - deity: { + domainSpell: { name: string; sourceID: string; specifier?: string | undefined; }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { + advancedDomainSpell: { name: string; sourceID: string; specifier?: string | undefined; }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }>, { - deity: { + preamble?: string | undefined; + apocryphalSpell?: { name: string; sourceID: string; specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { + } | undefined; + advancedApocryphalSpell?: { name: string; sourceID: string; specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }>; -}>, "strict", z.ZodTypeAny, { - type: "divineIntercession"; - data: { - deity: { + } | undefined; + }, { + domainSpell: { name: string; sourceID: string; specifier?: string | undefined; }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; + advancedDomainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + preamble?: string | undefined; + apocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; + } | undefined; + advancedApocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; + } | undefined; + }>>; +}>, "strict", z.ZodTypeAny, { + type: "domain"; source: { ID: string; page?: number | undefined; @@ -1281,7 +1267,29 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { - type: z.ZodLiteral<"domain">; - data: z.ZodObject<{ - preamble: z.ZodOptional; - domainSpell: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - advancedDomainSpell: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; + type: z.ZodLiteral<"event">; + data: z.ZodOptional, string[], string[]>>; + display: z.ZodOptional; }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; + trait: string; + display?: string | undefined; + variables?: string[] | undefined; }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - apocryphalSpell: z.ZodOptional; - sourceID: z.ZodEffects; + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }>, "many">, { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[], { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[]>>; + applicableSkills: z.ZodOptional; + variables: z.ZodOptional, string[], string[]>>; + display: z.ZodOptional; }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>>; - advancedApocryphalSpell: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }>, "many">, { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[], { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[]>>; + entries: z.ZodArray>; + type: string; + }>]>, "many">; }, "strict", z.ZodTypeAny, { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }, { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }>; -}>, "strict", z.ZodTypeAny, { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { + entries: (string | { + type: string; + })[]; + level: number; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + applicableSkills?: { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + }, { + entries: (string | { + type: string; + })[]; + level: number; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + applicableSkills?: { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + }>>; +}>, "strict", z.ZodTypeAny, { + type: "event"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { + type: string; + })[]; + level: number; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + applicableSkills?: { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { name: string; sourceID: string; specifier?: string | undefined; @@ -1644,30 +1620,7 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { - type: z.ZodLiteral<"event">; - data: z.ZodObject<{ - level: z.ZodNumber; - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - applicableSkills: z.ZodOptional; - variables: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; + type: z.ZodLiteral<"familiarAbility">; + data: z.ZodOptional; entries: z.ZodArray]>, "many">; + _tags: z.ZodOptional>; + affectsSenses: z.ZodOptional>; + affectsMovement: z.ZodOptional>; + hasRequirement: z.ZodOptional>; + grantsAbility: z.ZodOptional>; + repeatable: z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }>, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }>>; + }, "strict", z.ZodTypeAny, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }>, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }>>; }, "strict", z.ZodTypeAny, { entries: (string | { type: string; })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; + abilityType: "Familiar" | "Master"; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + } | undefined; }, { entries: (string | { type: string; })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }>; + abilityType: "Familiar" | "Master"; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + } | undefined; + }>>; }>, "strict", z.ZodTypeAny, { - type: "event"; - data: { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; + type: "familiarAbility"; source: { ID: string; page?: number | undefined; @@ -1942,7 +1925,22 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { - type: z.ZodLiteral<"familiarAbility">; - data: z.ZodObject<{ - abilityType: z.ZodEnum<["Familiar", "Master"]>; - entries: z.ZodArray; + data: z.ZodOptional, string[], string[]>>; + display: z.ZodOptional; + }, "strict", z.ZodTypeAny, { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; }, { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }>, "many">, { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[], { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[]>>; + aspects: z.ZodArray; + }, "strict", z.ZodTypeAny, { + name: string; + note?: string | undefined; + }, { + name: string; + note?: string | undefined; + }>, "many">; + prerequisites: z.ZodOptional; + entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }, { - entries: (string | { + }, { type: string; - })[]; - abilityType: "Familiar" | "Master"; - }>; - tags: z.ZodOptional>; - affectsSenses: z.ZodOptional>; - affectsMovement: z.ZodOptional>; - hasRequirement: z.ZodOptional>; - grantsAbility: z.ZodOptional>; - repeatable: z.ZodOptional>; + }>]>, "many">; + _tags: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, "strip", z.ZodLiteral, z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">>>; + misc: z.ZodOptional>; + "Grants ability": z.ZodOptional>; + "Grants passive attribute": z.ZodOptional>; + "Is rune": z.ZodOptional>; + "Soul seed": z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }>, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }>>; }, "strict", z.ZodTypeAny, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; }>, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; }>>; }, "strict", z.ZodTypeAny, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }>, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; + entries: (string | { + type: string; + })[]; + tier: string; + aspects: { + name: string; + note?: string | undefined; + }[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }>>; -}>, "strict", z.ZodTypeAny, { - type: "familiarAbility"; - data: { entries: (string | { type: string; })[]; - abilityType: "Familiar" | "Master"; - }; + tier: string; + aspects: { + name: string; + note?: string | undefined; + }[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; + }>>; +}>, "strict", z.ZodTypeAny, { + type: "relicGift"; source: { ID: string; page?: number | undefined; @@ -2253,15 +2363,35 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -2280,13 +2410,7 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -2458,43 +2602,9 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { - type: z.ZodLiteral<"relicGift">; + type: z.ZodLiteral<"skill">; data: z.ZodObject<{ - tier: z.ZodString; - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - aspects: z.ZodArray; - }, "strict", z.ZodTypeAny, { - name: string; - note?: string | undefined; - }, { - name: string; - note?: string | undefined; - }>, "many">; - prerequisites: z.ZodOptional; entries: z.ZodArray; - tags: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; - misc: z.ZodOptional>; - "Grants ability": z.ZodOptional>; - "Grants passive attribute": z.ZodOptional>; - "Is rune": z.ZodOptional>; - "Soul seed": z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }>, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>>; }>, "strict", z.ZodTypeAny, { - type: "relicGift"; + type: "skill"; data: { entries: (string | { type: string; })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; }; source: { ID: string; @@ -2674,20 +2637,6 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { @@ -2705,22 +2654,11 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { @@ -2761,112 +2685,444 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; }[] | undefined; } | undefined; -}>, z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { +}>]>, { + type: "background"; + source: { + ID: string; + page?: number | undefined; + }; + name: { primary: string; aliases?: string[] | undefined; specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { + }; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { name: string; sourceID: string; specifier?: string | undefined; - }, { + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + } | undefined; +} | { + type: "condition"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { name: string; sourceID: string; specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { + }; + modifications?: { + type: string; + target: { property: string; name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + } | undefined; +} | { + type: "domain"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + domainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + advancedDomainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + preamble?: string | undefined; + apocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; + } | undefined; + advancedApocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; + } | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { type: string; target: { property: string; name?: string | undefined; }; value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { + }[] | undefined; + } | undefined; +} | { + type: "event"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { + type: string; + })[]; + level: number; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + applicableSkills?: { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { type: string; target: { property: string; name?: string | undefined; }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + } | undefined; +} | { + type: "familiarAbility"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { + type: string; + })[]; + abilityType: "Familiar" | "Master"; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + } | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { type: string; target: { property: string; name?: string | undefined; }; value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { + }[] | undefined; + } | undefined; +} | { + type: "relicGift"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { + type: string; + })[]; + tier: string; + aspects: { + name: string; + note?: string | undefined; + }[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { type: string; target: { property: string; name?: string | undefined; }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + } | undefined; +} | { + type: "skill"; + data: { + entries: (string | { + type: string; + })[]; + }; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { type: string; target: { property: string; name?: string | undefined; }; value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { + }[] | undefined; + } | undefined; +}, { + type: "background"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { type: string; target: { property: string; name?: string | undefined; }; value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { + }[] | undefined; + } | undefined; +} | { + type: "condition"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + } | undefined; + reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { name: string; @@ -2879,9 +3135,44 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; - }, { + } | undefined; +} | { + type: "domain"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + domainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + advancedDomainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + preamble?: string | undefined; + apocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; + } | undefined; + advancedApocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; + } | undefined; + } | undefined; + reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { name: string; @@ -2896,34 +3187,95 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"skill">; - data: z.ZodObject<{ - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { + } | undefined; +} | { + type: "event"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { entries: (string | { type: string; })[]; - }, { - entries: (string | { + level: number; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + applicableSkills?: { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { type: string; - })[]; - }>; -}>, "strict", z.ZodTypeAny, { - type: "skill"; - data: { + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + } | undefined; +} | { + type: "familiarAbility"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { entries: (string | { type: string; })[]; - }; + abilityType: "Familiar" | "Master"; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + } | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + } | undefined; +} | { + type: "relicGift"; source: { ID: string; page?: number | undefined; @@ -2933,7 +3285,36 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; + } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { @@ -2947,10 +3328,10 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; } | undefined; -}, { +} | { type: "skill"; data: { entries: (string | { @@ -2966,7 +3347,6 @@ export declare const content: z.ZodDiscriminatedUnion<"type", [z.ZodObject | undefined; }[] | undefined; } | undefined; -}>]>; +}>; diff --git a/_dist/zod/_content.js b/_dist/zod/_content.js index 2a27fa4..3897cd0 100644 --- a/_dist/zod/_content.js +++ b/_dist/zod/_content.js @@ -1,8 +1,7 @@ -// This file was generated by scripts/generate-zod-combinedTypes.js at Sat, 27 Apr 2024 00:53:14 GMT +// This file was generated by scripts/generate-zod-combinedTypes.js at Thu, 16 May 2024 00:49:20 GMT import { z } from "zod"; import { background } from "./content/background.js"; import { condition } from "./content/condition.js"; -import { divineIntercession } from "./content/divineIntercession.js"; import { domain } from "./content/domain.js"; import { event } from "./content/event.js"; import { familiarAbility } from "./content/familiarAbility.js"; @@ -11,10 +10,9 @@ import { skill } from "./content/skill.js"; export const content = z.discriminatedUnion("type", [ background, condition, - divineIntercession, domain, event, familiarAbility, relicGift, skill, -]); +]).refine((content) => (content.reference ? !!content.data !== !!content.reference.modifications : content.data), "`data` and `reference.modifications` cannot be used simultaneously; choose one method to describe the content."); diff --git a/_dist/zod/_data.d.ts b/_dist/zod/_data.d.ts index 3effc25..b6e87af 100644 --- a/_dist/zod/_data.d.ts +++ b/_dist/zod/_data.d.ts @@ -1,18 +1,164 @@ import { z } from "zod"; -export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ - type: z.ZodLiteral<"license">; - ID: z.ZodEffects; - title: z.ZodObject<{ - full: z.ZodString; - short: z.ZodString; +export declare const data: z.ZodUnion<[z.ZodEffects; + aliases: z.ZodOptional, string[], string[]>>; + specifier: z.ZodOptional>; }, "strict", z.ZodTypeAny, { - short: string; - full: string; + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; }, { - short: string; - full: string; + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }>, { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }, { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; }>; - data: z.ZodObject<{ + source: z.ZodObject<{ + ID: z.ZodEffects; + page: z.ZodOptional; + }, "strict", z.ZodTypeAny, { + ID: string; + page?: number | undefined; + }, { + ID: string; + page?: number | undefined; + }>; + data: z.ZodOptional>; + reference: z.ZodOptional; + target: z.ZodObject<{ + name: z.ZodString; + specifier: z.ZodOptional; + sourceID: z.ZodEffects; + }, "strict", z.ZodTypeAny, { + name: string; + sourceID: string; + specifier?: string | undefined; + }, { + name: string; + sourceID: string; + specifier?: string | undefined; + }>; + modifications: z.ZodOptional; + }, "strip", z.ZodTypeAny, { + property: string; + name?: string | undefined; + }, { + property: string; + name?: string | undefined; + }>; + value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; + }, "strip", z.ZodTypeAny, { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }, { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }>, { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }, { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }>, "many">, { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[], { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[]>>; + }, "strict", z.ZodTypeAny, { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + }, { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + }>>; +}, { + type: z.ZodLiteral<"background">; + data: z.ZodOptional, string[], string[]>>; + display: z.ZodOptional; + }, "strict", z.ZodTypeAny, { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }, { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }>, "many">, { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[], { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[]>>; entries: z.ZodArray]>, "many">; + _tags: z.ZodOptional, z.ZodLiteral<"Free">]>, z.ZodLiteral>, Partial>, Partial>>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + abilities: Partial>; + count: number; + }, { + abilities: Partial>; + count: number; + }>>; + trainedSkills: z.ZodOptional, z.ZodLiteral<"Any">]>, z.ZodLiteral>, Partial>, Partial>>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + count: number; + skills: Partial>; + }, { + count: number; + skills: Partial>; + }>>; + gainedFeats: z.ZodOptional; + sourceID: z.ZodEffects; + }, "strict", z.ZodTypeAny, { + name: string; + sourceID: string; + specifier?: string | undefined; + }, { + name: string; + sourceID: string; + specifier?: string | undefined; + }>, "many">, { + name: string; + sourceID: string; + specifier?: string | undefined; + }[], { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }>>; + gainedSpells: z.ZodOptional; + sourceID: z.ZodEffects; + }, "strict", z.ZodTypeAny, { + name: string; + sourceID: string; + specifier?: string | undefined; + }, { + name: string; + sourceID: string; + specifier?: string | undefined; + }>, "many">, { + name: string; + sourceID: string; + specifier?: string | undefined; + }[], { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }>>; + misc: z.ZodOptional>; + "Grants equipment": z.ZodOptional>; + "Grants language": z.ZodOptional>; + "Grants resistance": z.ZodOptional>; + "Grants sense": z.ZodOptional>; + "Grants situational benefit": z.ZodOptional>; + "Has drawback": z.ZodOptional>; + "GM influence": z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }>, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }>>; + }, "strict", z.ZodTypeAny, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }>, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }>>; }, "strict", z.ZodTypeAny, { entries: (string | { type: string; })[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; }, { entries: (string | { type: string; })[]; - }>; -}, "strict", z.ZodTypeAny, { - type: "license"; - data: { + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + }>>; +}>, "strict", z.ZodTypeAny, { + type: "background"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { entries: (string | { type: string; })[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + } | undefined; +}, { + type: "background"; + source: { + ID: string; + page?: number | undefined; }; - title: { - short: string; - full: string; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; }; - ID: string; -}, { - type: "license"; - data: { + data?: { entries: (string | { type: string; })[]; - }; - title: { - short: string; - full: string; - }; - ID: string; -}>, z.ZodObject<{ - type: z.ZodLiteral<"source">; - ID: z.ZodEffects; - title: z.ZodObject<{ - full: z.ZodEffects; - short: z.ZodString; - }, "strict", z.ZodTypeAny, { - short: string; - full: string; - }, { - short: string; - full: string; - }>; - data: z.ZodObject<{ - released: z.ZodString; - version: z.ZodOptional; - errataed: z.ZodOptional; - added: z.ZodString; - modified: z.ZodString; - URL: z.ZodString; - groupIDs: z.ZodOptional, "atleastone">, [string, ...string[]], [string, ...string[]]>>; - requiredSourceIDs: z.ZodOptional, "atleastone">, [string, ...string[]], [string, ...string[]]>>; - licenseID: z.ZodEffects; - copyright: z.ZodOptional]>, "many">>; - authors: z.ZodOptional, [string, ...string[]], [string, ...string[]]>>; - publisher: z.ZodOptional; - converters: z.ZodOptional, [string, ...string[]], [string, ...string[]]>>; - }, "strict", z.ZodTypeAny, { - released: string; - added: string; - modified: string; - URL: string; - licenseID: string; - version?: string | undefined; - errataed?: string | undefined; - groupIDs?: [string, ...string[]] | undefined; - requiredSourceIDs?: [string, ...string[]] | undefined; - copyright?: (string | { - type: string; - })[] | undefined; - authors?: [string, ...string[]] | undefined; - publisher?: string | undefined; - converters?: [string, ...string[]] | undefined; - }, { - released: string; - added: string; - modified: string; - URL: string; - licenseID: string; - version?: string | undefined; - errataed?: string | undefined; - groupIDs?: [string, ...string[]] | undefined; - requiredSourceIDs?: [string, ...string[]] | undefined; - copyright?: (string | { - type: string; - })[] | undefined; - authors?: [string, ...string[]] | undefined; - publisher?: string | undefined; - converters?: [string, ...string[]] | undefined; - }>; - tags: z.ZodOptional>; - "Blog post": z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - Comic?: true | undefined; - "Blog post"?: true | undefined; - }, { - Comic?: true | undefined; - "Blog post"?: true | undefined; - }>, { - Comic?: true | undefined; - "Blog post"?: true | undefined; - }, { - Comic?: true | undefined; - "Blog post"?: true | undefined; - }>>; - status: z.ZodOptional>; - "Missing tags": z.ZodOptional>; - Invalid: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - }, { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - }>, { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - }, { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - }>>; - misc: z.ZodOptional>; - Official: z.ZodOptional>; - "GM-facing": z.ZodOptional>; - "PFS-legal": z.ZodOptional>; - Playtest: z.ZodOptional>; - Ongoing: z.ZodOptional>; - Deprecated: z.ZodOptional>; - NSFW: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - }, { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - }>, { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - }, { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - }, { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - }>, { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - }, { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - }>>; -}, "strict", z.ZodTypeAny, { - type: "source"; - data: { - released: string; - added: string; - modified: string; - URL: string; - licenseID: string; - version?: string | undefined; - errataed?: string | undefined; - groupIDs?: [string, ...string[]] | undefined; - requiredSourceIDs?: [string, ...string[]] | undefined; - copyright?: (string | { - type: string; - })[] | undefined; - authors?: [string, ...string[]] | undefined; - publisher?: string | undefined; - converters?: [string, ...string[]] | undefined; - }; - title: { - short: string; - full: string; - }; - ID: string; - tags?: { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - } | undefined; -}, { - type: "source"; - data: { - released: string; - added: string; - modified: string; - URL: string; - licenseID: string; - version?: string | undefined; - errataed?: string | undefined; - groupIDs?: [string, ...string[]] | undefined; - requiredSourceIDs?: [string, ...string[]] | undefined; - copyright?: (string | { - type: string; - })[] | undefined; - authors?: [string, ...string[]] | undefined; - publisher?: string | undefined; - converters?: [string, ...string[]] | undefined; - }; - title: { - short: string; - full: string; - }; - ID: string; - tags?: { - status?: { - "Missing content"?: true | undefined; - "Missing tags"?: true | undefined; - Invalid?: true | undefined; - } | undefined; - publicationType?: { - Comic?: true | undefined; - "Blog post"?: true | undefined; - } | undefined; - misc?: { - legacyRuleset?: true | undefined; - Official?: true | undefined; - "GM-facing"?: true | undefined; - "PFS-legal"?: true | undefined; - Playtest?: true | undefined; - Ongoing?: true | undefined; - Deprecated?: true | undefined; - NSFW?: true | undefined; - } | undefined; - } | undefined; -}>, z.ZodObject<{ - type: z.ZodLiteral<"sourceGroup">; - ID: z.ZodEffects; - title: z.ZodObject<{ - full: z.ZodString; - short: z.ZodString; - }, "strict", z.ZodTypeAny, { - short: string; - full: string; - }, { - short: string; - full: string; - }>; - data: z.ZodOptional, { - publisher: string; - }, { - publisher: string; - }>>; - tags: z.ZodOptional>; - Ongoing: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }, { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }>, { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }, { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }>; - }, "strict", z.ZodTypeAny, { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - }, { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - }>, { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - }, { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - }>>; -}, "strict", z.ZodTypeAny, { - type: "sourceGroup"; - title: { - short: string; - full: string; - }; - ID: string; - data?: { - publisher: string; - } | undefined; - tags?: { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; - }; - } | undefined; -}, { - type: "sourceGroup"; - title: { - short: string; - full: string; - }; - ID: string; - data?: { - publisher: string; - } | undefined; - tags?: { - misc: { - Ongoing?: true | undefined; - Adventure?: true | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; } | undefined; }>, z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { - type: z.ZodLiteral<"background">; - data: z.ZodObject<{ - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; + type: z.ZodLiteral<"condition">; + data: z.ZodOptional]>, "many">; + _tags: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, "strip", z.ZodLiteral, z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">>>; + }, "strict", z.ZodTypeAny, { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }, { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }>, { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }, { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }>>; }, "strict", z.ZodTypeAny, { entries: (string | { type: string; })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; + _tags?: { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; }, { entries: (string | { type: string; })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; + _tags?: { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + }>>; +}>, "strict", z.ZodTypeAny, { + type: "condition"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + } | undefined; +}, { + type: "condition"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; + } | undefined; +}>, z.ZodObject; + aliases: z.ZodOptional, string[], string[]>>; + specifier: z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }, { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }>, { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }, { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }>; + source: z.ZodObject<{ + ID: z.ZodEffects; + page: z.ZodOptional; + }, "strict", z.ZodTypeAny, { + ID: string; + page?: number | undefined; + }, { + ID: string; + page?: number | undefined; }>; - tags: z.ZodOptional, z.ZodLiteral<"free">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; + data: z.ZodOptional>; + reference: z.ZodOptional; + target: z.ZodObject<{ + name: z.ZodString; + specifier: z.ZodOptional; + sourceID: z.ZodEffects; }, "strict", z.ZodTypeAny, { - abilities: Partial>; - count: number; + name: string; + sourceID: string; + specifier?: string | undefined; }, { - abilities: Partial>; - count: number; - }>>; - trainedSkills: z.ZodOptional, z.ZodLiteral<"Any">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; + name: string; + sourceID: string; + specifier?: string | undefined; + }>; + modifications: z.ZodOptional; + }, "strip", z.ZodTypeAny, { + property: string; + name?: string | undefined; + }, { + property: string; + name?: string | undefined; + }>; + value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; + }, "strip", z.ZodTypeAny, { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }, { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }>, { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }, { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }>, "many">, { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[], { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[]>>; + }, "strict", z.ZodTypeAny, { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + }, { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + }>>; +}, { + type: z.ZodLiteral<"domain">; + data: z.ZodOptional; + domainSpell: z.ZodObject<{ + name: z.ZodString; + specifier: z.ZodOptional; + sourceID: z.ZodEffects; }, "strict", z.ZodTypeAny, { - count: number; - skills: Partial>; + name: string; + sourceID: string; + specifier?: string | undefined; }, { - count: number; - skills: Partial>; - }>>; - gainedFeats: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; + name: string; + sourceID: string; + specifier?: string | undefined; + }>; + advancedDomainSpell: z.ZodObject<{ + name: z.ZodString; + specifier: z.ZodOptional; + sourceID: z.ZodEffects; }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + name: string; + sourceID: string; + specifier?: string | undefined; }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }>>; - gainedSpells: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; + name: string; + sourceID: string; + specifier?: string | undefined; + }>; + apocryphalSpell: z.ZodOptional; + sourceID: z.ZodEffects; }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + name: string; + sourceID: string; + specifier?: string | undefined; }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + name: string; + sourceID: string; + specifier?: string | undefined; }>>; - misc: z.ZodOptional>; - "Grants equipment": z.ZodOptional>; - "Grants language": z.ZodOptional>; - "Grants resistance": z.ZodOptional>; - "Grants sense": z.ZodOptional>; - "Grants situational benefit": z.ZodOptional>; - "Has drawback": z.ZodOptional>; - "GM influence": z.ZodOptional>; + advancedApocryphalSpell: z.ZodOptional; + sourceID: z.ZodEffects; }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }>, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; + name: string; + sourceID: string; + specifier?: string | undefined; }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; + name: string; + sourceID: string; + specifier?: string | undefined; }>>; }, "strict", z.ZodTypeAny, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }>, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + domainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + advancedDomainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + preamble?: string | undefined; + apocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + advancedApocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; } | undefined; }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + domainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + advancedDomainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + preamble?: string | undefined; + apocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + advancedApocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; } | undefined; }>>; }>, "strict", z.ZodTypeAny, { - type: "background"; - data: { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; + type: "domain"; source: { ID: string; page?: number | undefined; @@ -960,40 +1267,27 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + data?: { + domainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + advancedDomainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + preamble?: string | undefined; + apocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + advancedApocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; } | undefined; } | undefined; reference?: { @@ -1013,17 +1307,7 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ }[] | undefined; } | undefined; }, { - type: "background"; - data: { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; + type: "domain"; source: { ID: string; page?: number | undefined; @@ -1033,40 +1317,27 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + data?: { + domainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + advancedDomainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + preamble?: string | undefined; + apocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + advancedApocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; } | undefined; } | undefined; reference?: { @@ -1190,41 +1461,83 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ }; value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"condition">; - data: z.ZodObject<{ + }, "strict", z.ZodTypeAny, { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + }, { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + }>>; +}, { + type: z.ZodLiteral<"event">; + data: z.ZodOptional, string[], string[]>>; + display: z.ZodOptional; + }, "strict", z.ZodTypeAny, { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }, { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }>, "many">, { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[], { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[]>>; + applicableSkills: z.ZodOptional; + variables: z.ZodOptional, string[], string[]>>; + display: z.ZodOptional; + }, "strict", z.ZodTypeAny, { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }, { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }>, "many">, { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[], { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[]>>; entries: z.ZodArray; - tags: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; - }, "strict", z.ZodTypeAny, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; + level: number; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + applicableSkills?: { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; }>>; }>, "strict", z.ZodTypeAny, { - type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; + type: "event"; source: { ID: string; page?: number | undefined; @@ -1334,14 +1587,21 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; + data?: { + entries: (string | { + type: string; + })[]; + level: number; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + applicableSkills?: { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -1360,12 +1620,7 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ }[] | undefined; } | undefined; }, { - type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; + type: "event"; source: { ID: string; page?: number | undefined; @@ -1375,14 +1630,21 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; + data?: { + entries: (string | { + type: string; + })[]; + level: number; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + applicableSkills?: { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -1499,248 +1761,161 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[], { type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"divineIntercession">; - data: z.ZodEffects; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - preamble: z.ZodOptional]>, "many">>; - "Minor Boon": z.ZodOptional]>, "many">>; - "Moderate Boon": z.ZodOptional]>, "many">>; - "Major Boon": z.ZodOptional]>, "many">>; - "Minor Curse": z.ZodOptional]>, "many">>; - "Moderate Curse": z.ZodOptional]>, "many">>; - "Major Curse": z.ZodOptional]>, "many">>; - }, "strict", z.ZodTypeAny, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }>, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[]>>; + }, "strict", z.ZodTypeAny, { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { name: string; sourceID: string; specifier?: string | undefined; }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { + modifications?: { type: string; - })[] | undefined; - }>; -}>, "strict", z.ZodTypeAny, { - type: "divineIntercession"; - data: { - deity: { + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + }, { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { name: string; sourceID: string; specifier?: string | undefined; }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { + modifications?: { type: string; - })[] | undefined; - "Major Boon"?: (string | { + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + }>>; +}, { + type: z.ZodLiteral<"familiarAbility">; + data: z.ZodOptional; + entries: z.ZodArray]>, "many">; + _tags: z.ZodOptional>; + affectsSenses: z.ZodOptional>; + affectsMovement: z.ZodOptional>; + hasRequirement: z.ZodOptional>; + grantsAbility: z.ZodOptional>; + repeatable: z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }>, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }>>; + }, "strict", z.ZodTypeAny, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }>, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }>>; + }, "strict", z.ZodTypeAny, { + entries: (string | { type: string; - })[] | undefined; - "Major Curse"?: (string | { + })[]; + abilityType: "Familiar" | "Master"; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + } | undefined; + }, { + entries: (string | { type: string; - })[] | undefined; - }; + })[]; + abilityType: "Familiar" | "Master"; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + } | undefined; + }>>; +}>, "strict", z.ZodTypeAny, { + type: "familiarAbility"; source: { ID: string; page?: number | undefined; @@ -1750,7 +1925,22 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: {} | undefined; + data?: { + entries: (string | { + type: string; + })[]; + abilityType: "Familiar" | "Master"; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + } | undefined; + } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { @@ -1768,35 +1958,7 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ }[] | undefined; } | undefined; }, { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; + type: "familiarAbility"; source: { ID: string; page?: number | undefined; @@ -1806,7 +1968,22 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: {} | undefined; + data?: { + entries: (string | { + type: string; + })[]; + abilityType: "Familiar" | "Master"; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + } | undefined; + } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { @@ -1959,133 +2136,224 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { - type: z.ZodLiteral<"domain">; - data: z.ZodObject<{ - preamble: z.ZodOptional; - domainSpell: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - advancedDomainSpell: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - apocryphalSpell: z.ZodOptional; - sourceID: z.ZodEffects; + type: z.ZodLiteral<"relicGift">; + data: z.ZodOptional, string[], string[]>>; + display: z.ZodOptional; }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; + trait: string; + display?: string | undefined; + variables?: string[] | undefined; }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>>; - advancedApocryphalSpell: z.ZodOptional, "many">, { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[], { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[]>>; + aspects: z.ZodArray; - sourceID: z.ZodEffects; + note: z.ZodOptional; }, "strict", z.ZodTypeAny, { name: string; - sourceID: string; - specifier?: string | undefined; + note?: string | undefined; }, { name: string; - sourceID: string; - specifier?: string | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }, { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }>; -}>, "strict", z.ZodTypeAny, { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { + note?: string | undefined; + }>, "many">; + prerequisites: z.ZodOptional; + entries: z.ZodArray]>, "many">; + _tags: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, "strip", z.ZodLiteral, z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">>>; + misc: z.ZodOptional>; + "Grants ability": z.ZodOptional>; + "Grants passive attribute": z.ZodOptional>; + "Is rune": z.ZodOptional>; + "Soul seed": z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }>, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }>>; + }, "strict", z.ZodTypeAny, { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }, { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }>, { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }, { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }>>; + }, "strict", z.ZodTypeAny, { + entries: (string | { + type: string; + })[]; + tier: string; + aspects: { name: string; - sourceID: string; - specifier?: string | undefined; + note?: string | undefined; + }[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; } | undefined; - advancedApocryphalSpell?: { + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; + }, { + entries: (string | { + type: string; + })[]; + tier: string; + aspects: { name: string; - sourceID: string; - specifier?: string | undefined; + note?: string | undefined; + }[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; } | undefined; - }; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; + }>>; +}>, "strict", z.ZodTypeAny, { + type: "relicGift"; source: { ID: string; page?: number | undefined; @@ -2095,7 +2363,36 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: {} | undefined; + data?: { + entries: (string | { + type: string; + })[]; + tier: string; + aspects: { + name: string; + note?: string | undefined; + }[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; + } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { @@ -2113,30 +2410,7 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ }[] | undefined; } | undefined; }, { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; + type: "relicGift"; source: { ID: string; page?: number | undefined; @@ -2146,7 +2420,36 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: {} | undefined; + data?: { + entries: (string | { + type: string; + })[]; + tier: string; + aspects: { + name: string; + note?: string | undefined; + }[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; + } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { @@ -2299,53 +2602,9 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { - type: z.ZodLiteral<"event">; + type: z.ZodLiteral<"skill">; data: z.ZodObject<{ - level: z.ZodNumber; - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - applicableSkills: z.ZodOptional; - variables: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; entries: z.ZodArray; +}>, "strict", z.ZodTypeAny, { + type: "skill"; + data: { + entries: (string | { + type: string; + })[]; + }; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; + } | undefined; +}, { + type: "skill"; + data: { + entries: (string | { + type: string; + })[]; + }; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; - }, { + } | undefined; +}>]>, { + type: "background"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { entries: (string | { type: string; })[]; - level: number; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + } | undefined; traits?: { trait: string; display?: string | undefined; variables?: string[] | undefined; }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; - }>; -}>, "strict", z.ZodTypeAny, { - type: "event"; - data: { + } | undefined; +} | { + type: "condition"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { entries: (string | { type: string; })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; + _tags?: { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; - }; + } | undefined; +} | { + type: "domain"; source: { ID: string; page?: number | undefined; @@ -2411,7 +2810,29 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: {} | undefined; + data?: { + domainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + advancedDomainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + preamble?: string | undefined; + apocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; + } | undefined; + advancedApocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; + } | undefined; + } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { @@ -2428,9 +2849,18 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; } | undefined; -}, { +} | { type: "event"; - data: { + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { entries: (string | { type: string; })[]; @@ -2445,7 +2875,25 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ display?: string | undefined; variables?: string[] | undefined; }[] | undefined; - }; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { + type: string; + target: { + property: string; + name?: string | undefined; + }; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + }[] | undefined; + } | undefined; +} | { + type: "familiarAbility"; source: { ID: string; page?: number | undefined; @@ -2455,7 +2903,22 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: {} | undefined; + data?: { + entries: (string | { + type: string; + })[]; + abilityType: "Familiar" | "Master"; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + } | undefined; + } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { @@ -2469,115 +2932,156 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ property: string; name?: string | undefined; }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; } | undefined; -}>, z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { +} | { + type: "relicGift"; + source: { + ID: string; + page?: number | undefined; + }; + name: { primary: string; aliases?: string[] | undefined; specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { + }; + data?: { + entries: (string | { + type: string; + })[]; + tier: string; + aspects: { name: string; - sourceID: string; - specifier?: string | undefined; - }, { + note?: string | undefined; + }[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { name: string; sourceID: string; specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { + }; + modifications?: { type: string; target: { property: string; name?: string | undefined; }; value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { + }[] | undefined; + } | undefined; +} | { + type: "skill"; + data: { + entries: (string | { type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { + })[]; + }; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + modifications?: { type: string; target: { property: string; name?: string | undefined; }; value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { + }[] | undefined; + } | undefined; +}, { + type: "background"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { + })[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + } | undefined; + reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { name: string; @@ -2590,9 +3094,35 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ property: string; name?: string | undefined; }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; - }, { + } | undefined; +} | { + type: "condition"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + } | undefined; + reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { name: string; @@ -2607,112 +3137,9 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ }; value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"familiarAbility">; - data: z.ZodObject<{ - abilityType: z.ZodEnum<["Familiar", "Master"]>; - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }, { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }>; - tags: z.ZodOptional>; - affectsSenses: z.ZodOptional>; - affectsMovement: z.ZodOptional>; - hasRequirement: z.ZodOptional>; - grantsAbility: z.ZodOptional>; - repeatable: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }>, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }>, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }>>; -}>, "strict", z.ZodTypeAny, { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; + } | undefined; +} | { + type: "domain"; source: { ID: string; page?: number | undefined; @@ -2722,14 +3149,27 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; + data?: { + domainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + advancedDomainSpell: { + name: string; + sourceID: string; + specifier?: string | undefined; + }; + preamble?: string | undefined; + apocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; + } | undefined; + advancedApocryphalSpell?: { + name: string; + sourceID: string; + specifier?: string | undefined; } | undefined; } | undefined; reference?: { @@ -2745,17 +3185,11 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ property: string; name?: string | undefined; }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; } | undefined; -}, { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; +} | { + type: "event"; source: { ID: string; page?: number | undefined; @@ -2765,15 +3199,21 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ aliases?: string[] | undefined; specifier?: string | undefined; }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; + data?: { + entries: (string | { + type: string; + })[]; + level: number; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + applicableSkills?: { + skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -2791,112 +3231,91 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; } | undefined; -}>, z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { +} | { + type: "familiarAbility"; + source: { + ID: string; + page?: number | undefined; + }; + name: { primary: string; aliases?: string[] | undefined; specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { + }; + data?: { + entries: (string | { + type: string; + })[]; + abilityType: "Familiar" | "Master"; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + } | undefined; + } | undefined; + reference?: { + type: "variant" | "reprint" | "replacement" | "extension"; + target: { name: string; sourceID: string; specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { + }; + modifications?: { type: string; target: { property: string; name?: string | undefined; }; value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { + }[] | undefined; + } | undefined; +} | { + type: "relicGift"; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { + entries: (string | { type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { + })[]; + tier: string; + aspects: { + name: string; + note?: string | undefined; + }[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; + prerequisites?: string | undefined; + } | undefined; + reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { name: string; @@ -2909,9 +3328,26 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ property: string; name?: string | undefined; }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; - }, { + } | undefined; +} | { + type: "skill"; + data: { + entries: (string | { + type: string; + })[]; + }; + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { name: string; @@ -2926,44 +3362,21 @@ export declare const data: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ }; value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"relicGift">; + } | undefined; +}>, z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ + type: z.ZodLiteral<"license">; + ID: z.ZodEffects; + title: z.ZodObject<{ + full: z.ZodString; + short: z.ZodString; + }, "strict", z.ZodTypeAny, { + short: string; + full: string; + }, { + short: string; + full: string; + }>; data: z.ZodObject<{ - tier: z.ZodString; - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - aspects: z.ZodArray; - }, "strict", z.ZodTypeAny, { - name: string; - note?: string | undefined; - }, { - name: string; - note?: string | undefined; - }>, "many">; - prerequisites: z.ZodOptional; entries: z.ZodArray; - tags: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; +}, "strict", z.ZodTypeAny, { + type: "license"; + data: { + entries: (string | { + type: string; + })[]; + }; + title: { + short: string; + full: string; + }; + ID: string; +}, { + type: "license"; + data: { + entries: (string | { + type: string; + })[]; + }; + title: { + short: string; + full: string; + }; + ID: string; +}>, z.ZodObject<{ + type: z.ZodLiteral<"source">; + ID: z.ZodEffects; + title: z.ZodObject<{ + full: z.ZodEffects; + short: z.ZodString; + }, "strict", z.ZodTypeAny, { + short: string; + full: string; + }, { + short: string; + full: string; + }>; + data: z.ZodObject<{ + released: z.ZodString; + version: z.ZodOptional; + errataed: z.ZodOptional; + added: z.ZodString; + modified: z.ZodString; + URL: z.ZodString; + groupIDs: z.ZodOptional, "atleastone">, [string, ...string[]], [string, ...string[]]>>; + requiredSourceIDs: z.ZodOptional, "atleastone">, [string, ...string[]], [string, ...string[]]>>; + licenseID: z.ZodEffects; + copyright: z.ZodOptional]>, "many">>; + authors: z.ZodOptional, [string, ...string[]], [string, ...string[]]>>; + publisher: z.ZodOptional; + converters: z.ZodOptional, [string, ...string[]], [string, ...string[]]>>; + }, "strict", z.ZodTypeAny, { + released: string; + added: string; + modified: string; + URL: string; + licenseID: string; + version?: string | undefined; + errataed?: string | undefined; + groupIDs?: [string, ...string[]] | undefined; + requiredSourceIDs?: [string, ...string[]] | undefined; + copyright?: (string | { + type: string; + })[] | undefined; + authors?: [string, ...string[]] | undefined; + publisher?: string | undefined; + converters?: [string, ...string[]] | undefined; + }, { + released: string; + added: string; + modified: string; + URL: string; + licenseID: string; + version?: string | undefined; + errataed?: string | undefined; + groupIDs?: [string, ...string[]] | undefined; + requiredSourceIDs?: [string, ...string[]] | undefined; + copyright?: (string | { + type: string; + })[] | undefined; + authors?: [string, ...string[]] | undefined; + publisher?: string | undefined; + converters?: [string, ...string[]] | undefined; + }>; + _tags: z.ZodOptional>; + "Blog post": z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + Comic?: true | undefined; + "Blog post"?: true | undefined; + }, { + Comic?: true | undefined; + "Blog post"?: true | undefined; + }>, { + Comic?: true | undefined; + "Blog post"?: true | undefined; + }, { + Comic?: true | undefined; + "Blog post"?: true | undefined; + }>>; + status: z.ZodOptional>; + "Missing tags": z.ZodOptional>; + Invalid: z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + }, { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + }>, { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + }, { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + }>>; misc: z.ZodOptional>; - "Grants ability": z.ZodOptional>; - "Grants passive attribute": z.ZodOptional>; - "Is rune": z.ZodOptional>; - "Soul seed": z.ZodOptional>; + legacyRuleset: z.ZodOptional>; + Official: z.ZodOptional>; + "GM-facing": z.ZodOptional>; + "PFS-legal": z.ZodOptional>; + Playtest: z.ZodOptional>; + Ongoing: z.ZodOptional>; + Deprecated: z.ZodOptional>; + NSFW: z.ZodOptional>; }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; }>, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; }>>; }, "strict", z.ZodTypeAny, { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; }, { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; }>, { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; }, { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; }>>; -}>, "strict", z.ZodTypeAny, { - type: "relicGift"; +}, "strict", z.ZodTypeAny, { + type: "source"; data: { - entries: (string | { + released: string; + added: string; + modified: string; + URL: string; + licenseID: string; + version?: string | undefined; + errataed?: string | undefined; + groupIDs?: [string, ...string[]] | undefined; + requiredSourceIDs?: [string, ...string[]] | undefined; + copyright?: (string | { type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; + })[] | undefined; + authors?: [string, ...string[]] | undefined; + publisher?: string | undefined; + converters?: [string, ...string[]] | undefined; }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + title: { + short: string; + full: string; }; - tags?: { + ID: string; + _tags?: { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; } | undefined; }, { - type: "relicGift"; + type: "source"; data: { - entries: (string | { + released: string; + added: string; + modified: string; + URL: string; + licenseID: string; + version?: string | undefined; + errataed?: string | undefined; + groupIDs?: [string, ...string[]] | undefined; + requiredSourceIDs?: [string, ...string[]] | undefined; + copyright?: (string | { type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; + })[] | undefined; + authors?: [string, ...string[]] | undefined; + publisher?: string | undefined; + converters?: [string, ...string[]] | undefined; }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + title: { + short: string; + full: string; }; - tags?: { + ID: string; + _tags?: { + status?: { + "Missing content"?: true | undefined; + "Missing tags"?: true | undefined; + Invalid?: true | undefined; + } | undefined; + publicationType?: { + Comic?: true | undefined; + "Blog post"?: true | undefined; + } | undefined; misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; + legacyRuleset?: true | undefined; + Official?: true | undefined; + "GM-facing"?: true | undefined; + "PFS-legal"?: true | undefined; + Playtest?: true | undefined; + Ongoing?: true | undefined; + Deprecated?: true | undefined; + NSFW?: true | undefined; } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; } | undefined; -}>, z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; +}>, z.ZodObject<{ + type: z.ZodLiteral<"sourceGroup">; + ID: z.ZodEffects; + title: z.ZodObject<{ + full: z.ZodString; + short: z.ZodString; }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + short: string; + full: string; }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + short: string; + full: string; }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; + data: z.ZodOptional; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; + publisher: string; + }>, { + publisher: string; + }, { + publisher: string; + }>>; + _tags: z.ZodOptional>; + Ongoing: z.ZodOptional>; }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + Ongoing?: true | undefined; + Adventure?: true | undefined; }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + Ongoing?: true | undefined; + Adventure?: true | undefined; }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; + Ongoing?: true | undefined; + Adventure?: true | undefined; }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; + Ongoing?: true | undefined; + Adventure?: true | undefined; + }>; }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; + }; + }>, { + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"skill">; - data: z.ZodObject<{ - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; }, { - entries: (string | { - type: string; - })[]; - }>; -}>, "strict", z.ZodTypeAny, { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; + }; + }>>; +}, "strict", z.ZodTypeAny, { + type: "sourceGroup"; + title: { + short: string; + full: string; }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; + ID: string; + data?: { + publisher: string; + } | undefined; + _tags?: { + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; } | undefined; }, { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; + type: "sourceGroup"; + title: { + short: string; + full: string; }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; + ID: string; + data?: { + publisher: string; + } | undefined; + _tags?: { + misc: { + Ongoing?: true | undefined; + Adventure?: true | undefined; }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; } | undefined; -}>]>; +}>]>]>; diff --git a/_dist/zod/_data.js b/_dist/zod/_data.js index c0dcebb..238932d 100644 --- a/_dist/zod/_data.js +++ b/_dist/zod/_data.js @@ -1,26 +1,8 @@ -// This file was generated by scripts/generate-zod-combinedTypes.js at Sat, 27 Apr 2024 00:53:14 GMT +// This file was generated by scripts/generate-zod-combinedTypes.js at Thu, 16 May 2024 00:49:20 GMT import { z } from "zod"; import { license } from "./license.js"; import { source } from "./source.js"; import { sourceGroup } from "./sourceGroup.js"; -import { background } from "./content/background.js"; -import { condition } from "./content/condition.js"; -import { divineIntercession } from "./content/divineIntercession.js"; -import { domain } from "./content/domain.js"; -import { event } from "./content/event.js"; -import { familiarAbility } from "./content/familiarAbility.js"; -import { relicGift } from "./content/relicGift.js"; -import { skill } from "./content/skill.js"; -export const data = z.discriminatedUnion("type", [ - license, - source, - sourceGroup, - background, - condition, - divineIntercession, - domain, - event, - familiarAbility, - relicGift, - skill, -]); +const metaType = z.discriminatedUnion("type", [license, source, sourceGroup]); +import { content } from "./_content.js"; +export const data = content.or(metaType); diff --git a/_dist/zod/_index.d.ts b/_dist/zod/_index.d.ts index f59cf5d..9af6cd7 100644 --- a/_dist/zod/_index.d.ts +++ b/_dist/zod/_index.d.ts @@ -5,10 +5,8 @@ export { sourceGroup } from "./sourceGroup.js"; export { bundle } from "./_bundle.js"; export { content } from "./_content.js"; export { data } from "./_data.js"; -export { statblock } from "./_statblock.js"; export { background } from "./content/background.js"; export { condition } from "./content/condition.js"; -export { divineIntercession } from "./content/divineIntercession.js"; export { domain } from "./content/domain.js"; export { event } from "./content/event.js"; export { familiarAbility } from "./content/familiarAbility.js"; diff --git a/_dist/zod/_index.js b/_dist/zod/_index.js index 33963ea..ea42215 100644 --- a/_dist/zod/_index.js +++ b/_dist/zod/_index.js @@ -1,4 +1,4 @@ -// This file was generated by scripts/generate-zod-index.js at Sat, 27 Apr 2024 00:53:15 GMT +// This file was generated by scripts/generate-zod-index.js at Thu, 16 May 2024 00:49:21 GMT // . export { contentTemplate } from "./contentTemplate.js"; export { license } from "./license.js"; @@ -7,11 +7,9 @@ export { sourceGroup } from "./sourceGroup.js"; export { bundle } from "./_bundle.js"; export { content } from "./_content.js"; export { data } from "./_data.js"; -export { statblock } from "./_statblock.js"; // content export { background } from "./content/background.js"; export { condition } from "./content/condition.js"; -export { divineIntercession } from "./content/divineIntercession.js"; export { domain } from "./content/domain.js"; export { event } from "./content/event.js"; export { familiarAbility } from "./content/familiarAbility.js"; diff --git a/_dist/zod/_statblock.d.ts b/_dist/zod/_statblock.d.ts deleted file mode 100644 index 3cac24d..0000000 --- a/_dist/zod/_statblock.d.ts +++ /dev/null @@ -1,2986 +0,0 @@ -import { z } from "zod"; -export declare const statblock: z.ZodDiscriminatedUnion<"type", [z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"background">; - data: z.ZodObject<{ - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }, { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }>; - tags: z.ZodOptional, z.ZodLiteral<"free">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - abilities: Partial>; - count: number; - }, { - abilities: Partial>; - count: number; - }>>; - trainedSkills: z.ZodOptional, z.ZodLiteral<"Any">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - count: number; - skills: Partial>; - }, { - count: number; - skills: Partial>; - }>>; - gainedFeats: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }>>; - gainedSpells: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }>>; - misc: z.ZodOptional>; - "Grants equipment": z.ZodOptional>; - "Grants language": z.ZodOptional>; - "Grants resistance": z.ZodOptional>; - "Grants sense": z.ZodOptional>; - "Grants situational benefit": z.ZodOptional>; - "Has drawback": z.ZodOptional>; - "GM influence": z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }>, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }>, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }>>; -}>, "strict", z.ZodTypeAny, { - type: "background"; - data: { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}, { - type: "background"; - data: { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}>, z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"condition">; - data: z.ZodObject<{ - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - }, { - entries: (string | { - type: string; - })[]; - }>; - tags: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; - }, "strict", z.ZodTypeAny, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>>; -}>, "strict", z.ZodTypeAny, { - type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}, { - type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}>, z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"divineIntercession">; - data: z.ZodEffects; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - preamble: z.ZodOptional]>, "many">>; - "Minor Boon": z.ZodOptional]>, "many">>; - "Moderate Boon": z.ZodOptional]>, "many">>; - "Major Boon": z.ZodOptional]>, "many">>; - "Minor Curse": z.ZodOptional]>, "many">>; - "Moderate Curse": z.ZodOptional]>, "many">>; - "Major Curse": z.ZodOptional]>, "many">>; - }, "strict", z.ZodTypeAny, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }>, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }>; -}>, "strict", z.ZodTypeAny, { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}, { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}>, z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"domain">; - data: z.ZodObject<{ - preamble: z.ZodOptional; - domainSpell: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - advancedDomainSpell: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - apocryphalSpell: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>>; - advancedApocryphalSpell: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }, { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }>; -}>, "strict", z.ZodTypeAny, { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}, { - type: "domain"; - data: { - domainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - advancedDomainSpell: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: string | undefined; - apocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - advancedApocryphalSpell?: { - name: string; - sourceID: string; - specifier?: string | undefined; - } | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}>, z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"event">; - data: z.ZodObject<{ - level: z.ZodNumber; - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - applicableSkills: z.ZodOptional; - variables: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }, { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }>; -}>, "strict", z.ZodTypeAny, { - type: "event"; - data: { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}, { - type: "event"; - data: { - entries: (string | { - type: string; - })[]; - level: number; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - applicableSkills?: { - skill: "Acrobatics" | "Arcana" | "Athletics" | "Crafting" | "Deception" | "Diplomacy" | "Intimidation" | "Lore" | "Medicine" | "Nature" | "Occultism" | "Performance" | "Religion" | "Society" | "Stealth" | "Survival" | "Thievery"; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}>, z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"familiarAbility">; - data: z.ZodObject<{ - abilityType: z.ZodEnum<["Familiar", "Master"]>; - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }, { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }>; - tags: z.ZodOptional>; - affectsSenses: z.ZodOptional>; - affectsMovement: z.ZodOptional>; - hasRequirement: z.ZodOptional>; - grantsAbility: z.ZodOptional>; - repeatable: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }>, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }>, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }>>; -}>, "strict", z.ZodTypeAny, { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}, { - type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}>, z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"relicGift">; - data: z.ZodObject<{ - tier: z.ZodString; - traits: z.ZodOptional, string[], string[]>>; - display: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }>, "many">, { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[], { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[]>>; - aspects: z.ZodArray; - }, "strict", z.ZodTypeAny, { - name: string; - note?: string | undefined; - }, { - name: string; - note?: string | undefined; - }>, "many">; - prerequisites: z.ZodOptional; - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }, { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }>; - tags: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; - misc: z.ZodOptional>; - "Grants ability": z.ZodOptional>; - "Grants passive attribute": z.ZodOptional>; - "Is rune": z.ZodOptional>; - "Soul seed": z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }>, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>>; -}>, "strict", z.ZodTypeAny, { - type: "relicGift"; - data: { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}, { - type: "relicGift"; - data: { - entries: (string | { - type: string; - })[]; - tier: string; - aspects: { - name: string; - note?: string | undefined; - }[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - } | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}>, z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"skill">; - data: z.ZodObject<{ - entries: z.ZodArray]>, "many">; - }, "strict", z.ZodTypeAny, { - entries: (string | { - type: string; - })[]; - }, { - entries: (string | { - type: string; - })[]; - }>; -}>, "strict", z.ZodTypeAny, { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}, { - type: "skill"; - data: { - entries: (string | { - type: string; - })[]; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}>]>; diff --git a/_dist/zod/_statblock.js b/_dist/zod/_statblock.js deleted file mode 100644 index 1fa6d2d..0000000 --- a/_dist/zod/_statblock.js +++ /dev/null @@ -1,20 +0,0 @@ -// This file was generated by scripts/generate-zod-combinedTypes.js at Sun, 11 Feb 2024 14:24:29 GMT -import { z } from "zod"; -import { background } from "./content/background.js"; -import { condition } from "./content/condition.js"; -import { divineIntercession } from "./content/divineIntercession.js"; -import { domain } from "./content/domain.js"; -import { event } from "./content/event.js"; -import { familiarAbility } from "./content/familiarAbility.js"; -import { relicGift } from "./content/relicGift.js"; -import { skill } from "./content/skill.js"; -export const statblock = z.discriminatedUnion("type", [ - background, - condition, - divineIntercession, - domain, - event, - familiarAbility, - relicGift, - skill, -]); diff --git a/_dist/zod/content/background.d.ts b/_dist/zod/content/background.d.ts index 7b6f38d..bd56374 100644 --- a/_dist/zod/content/background.d.ts +++ b/_dist/zod/content/background.d.ts @@ -135,10 +135,9 @@ export declare const background: z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { type: z.ZodLiteral<"background">; - data: z.ZodObject<{ + data: z.ZodOptional, string[], string[]>>; @@ -167,10 +166,330 @@ export declare const background: z.ZodObject]>, "many">; + _tags: z.ZodOptional, z.ZodLiteral<"Free">]>, z.ZodLiteral>, Partial>, Partial>>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + abilities: Partial>; + count: number; + }, { + abilities: Partial>; + count: number; + }>>; + trainedSkills: z.ZodOptional, z.ZodLiteral<"Any">]>, z.ZodLiteral>, Partial>, Partial>>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + count: number; + skills: Partial>; + }, { + count: number; + skills: Partial>; + }>>; + gainedFeats: z.ZodOptional; + sourceID: z.ZodEffects; + }, "strict", z.ZodTypeAny, { + name: string; + sourceID: string; + specifier?: string | undefined; + }, { + name: string; + sourceID: string; + specifier?: string | undefined; + }>, "many">, { + name: string; + sourceID: string; + specifier?: string | undefined; + }[], { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }>>; + gainedSpells: z.ZodOptional; + sourceID: z.ZodEffects; + }, "strict", z.ZodTypeAny, { + name: string; + sourceID: string; + specifier?: string | undefined; + }, { + name: string; + sourceID: string; + specifier?: string | undefined; + }>, "many">, { + name: string; + sourceID: string; + specifier?: string | undefined; + }[], { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]>; + count: z.ZodNumber; + }, "strict", z.ZodTypeAny, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }, { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + }>>; + misc: z.ZodOptional>; + "Grants equipment": z.ZodOptional>; + "Grants language": z.ZodOptional>; + "Grants resistance": z.ZodOptional>; + "Grants sense": z.ZodOptional>; + "Grants situational benefit": z.ZodOptional>; + "Has drawback": z.ZodOptional>; + "GM influence": z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }>, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + }>>; + }, "strict", z.ZodTypeAny, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }>, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }, { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + }>>; }, "strict", z.ZodTypeAny, { entries: (string | { type: string; })[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + } | undefined; traits?: { trait: string; display?: string | undefined; @@ -180,308 +499,50 @@ export declare const background: z.ZodObject>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + } | undefined; traits?: { trait: string; display?: string | undefined; variables?: string[] | undefined; }[] | undefined; - }>; - tags: z.ZodOptional, z.ZodLiteral<"free">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - abilities: Partial>; - count: number; - }, { - abilities: Partial>; - count: number; - }>>; - trainedSkills: z.ZodOptional, z.ZodLiteral<"Any">]>, z.ZodLiteral>, Partial>, Partial>>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - count: number; - skills: Partial>; - }, { - count: number; - skills: Partial>; - }>>; - gainedFeats: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }>>; - gainedSpells: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>, "many">, { - name: string; - sourceID: string; - specifier?: string | undefined; - }[], { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]>; - count: z.ZodNumber; - }, "strict", z.ZodTypeAny, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }, { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - }>>; - misc: z.ZodOptional>; - "Grants equipment": z.ZodOptional>; - "Grants language": z.ZodOptional>; - "Grants resistance": z.ZodOptional>; - "Grants sense": z.ZodOptional>; - "Grants situational benefit": z.ZodOptional>; - "Has drawback": z.ZodOptional>; - "GM influence": z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }>, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }>, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Grants equipment"?: true | undefined; - "Grants language"?: true | undefined; - "Grants resistance"?: true | undefined; - "Grants sense"?: true | undefined; - "Grants situational benefit"?: true | undefined; - "Has drawback"?: true | undefined; - "GM influence"?: true | undefined; - } | undefined; - abilityBoosts?: { - abilities: Partial>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; }>>; }>, "strict", z.ZodTypeAny, { type: "background"; - data: { - entries: (string | { - type: string; - })[]; - traits?: { - trait: string; - display?: string | undefined; - variables?: string[] | undefined; - }[] | undefined; - }; source: { ID: string; page?: number | undefined; @@ -491,41 +552,51 @@ export declare const background: z.ZodObject>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -545,16 +616,6 @@ export declare const background: z.ZodObject>; - count: number; - } | undefined; - trainedSkills?: { - count: number; - skills: Partial>; - } | undefined; - gainedFeats?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; - } | undefined; - gainedSpells?: { - options: { - name: string; - sourceID: string; - specifier?: string | undefined; - }[]; - count: number; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + misc?: { + "Grants ability"?: true | undefined; + "Grants equipment"?: true | undefined; + "Grants language"?: true | undefined; + "Grants resistance"?: true | undefined; + "Grants sense"?: true | undefined; + "Grants situational benefit"?: true | undefined; + "Has drawback"?: true | undefined; + "GM influence"?: true | undefined; + } | undefined; + abilityBoosts?: { + abilities: Partial>; + count: number; + } | undefined; + trainedSkills?: { + count: number; + skills: Partial>; + } | undefined; + gainedFeats?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; + gainedSpells?: { + options: { + name: string; + sourceID: string; + specifier?: string | undefined; + }[]; + count: number; + } | undefined; } | undefined; + traits?: { + trait: string; + display?: string | undefined; + variables?: string[] | undefined; + }[] | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; diff --git a/_dist/zod/content/background.js b/_dist/zod/content/background.js index dcef731..4a2741a 100644 --- a/_dist/zod/content/background.js +++ b/_dist/zod/content/background.js @@ -7,123 +7,125 @@ import { listOfAbilities } from "./constants/listOfAbilities.js"; import { listOfSkills } from "./constants/listOfSkills.js"; import { referenceTarget } from "./common/referenceTarget.js"; import { uniqueObjects } from "../utils/uniqueObjects.js"; -export const background = contentTemplate.merge(z - .object({ +export const background = contentTemplate + .extend({ type: z.literal("background"), data: z .object({ traits: traits.optional(), entries: entries, - }) - .strict(), - tags: z - .object({ - abilityBoosts: z - .object({ - abilities: z - .record(listOfAbilities.or(z.literal("free")), z.literal(true)) - .describe("An object containing the types of boost that the background can grant.") - .refine(...nonEmpty), - count: z - .number() - .int() - .describe("The total number of boosts the background can grant.") - .min(1) - .max(3), // Maximum only exists as an extra guard against typos; if anything official or homebrew would legitimately break it, it can be removed. - }) - .describe("The ability boosts the background grants.") - .strict() - .optional(), - trainedSkills: z - .object({ - skills: z - .record(listOfSkills.or(z.literal("Any")), z.literal(true)) - .describe("A list of skills in which the background can grant proficiency.") - .refine(...nonEmpty), - count: z - .number() - .int() - .describe("The total number of distinct skill proficiencies the background can grant.") - .min(1) - .max(4), // Maximum only exists as an extra guard against typos; if anything official or homebrew would legitimately break it, it can be removed. - }) - .describe("The skills in which the background can grant proficiency.") - .strict() - .optional(), - gainedFeats: z + _tags: z .object({ - options: z - .array(referenceTarget) - .describe("A list of feats the background can grant.") - .min(1) - .refine(...uniqueObjects), - count: z - .number() - .int() - .describe("The total number of feats the background can grant.") - .min(1) - .max(2), // Maximum only exists as an extra guard against typos; if anything official or homebrew would legitimately break it, it can be removed. - }) - .describe("The feats the background grants.") - .strict() - .optional(), - gainedSpells: z - .object({ - options: z - .array(referenceTarget) - .describe("A list of spells the background can grant.") - .min(1) - .refine(...uniqueObjects), - count: z - .number() - .int() - .describe("The total number of feats the background can grant.") - .min(1) - .max(2), // Maximum only exists as an extra guard against typos; if anything official or homebrew would legitimately break it, it can be removed. - }) - .describe("The spells the background grants.") - .strict() - .optional(), - misc: z - .object({ - "Grants ability": z - .literal(true) - .describe("The background background grants an active, voluntary ability.") - .optional(), - "Grants equipment": z - .literal(true) - .describe("The background grants a free item (not just access or proficiency—the actual concrete thing).") - .optional(), - "Grants language": z.literal(true).describe("The background grants a language.").optional(), - "Grants resistance": z - .literal(true) - .describe("The background grants a damage resistance.") + abilityBoosts: z + .object({ + abilities: z + .record(listOfAbilities.or(z.literal("Free")), z.literal(true)) + .describe("An object containing the types of boost that the background can grant.") + .refine(...nonEmpty), + count: z + .number() + .int() + .describe("The total number of boosts the background can grant.") + .min(1) + .max(3), // Maximum only exists as an extra guard against typos; if anything official or homebrew would legitimately break it, it can be removed. + }) + .describe("The ability boosts the background grants.") + .strict() .optional(), - "Grants sense": z - .literal(true) - .describe("The background grants a sense (e.g. darkvision, scent).") + trainedSkills: z + .object({ + skills: z + .record(listOfSkills.or(z.literal("Any")), z.literal(true)) + .describe("A list of skills in which the background can grant proficiency.") + .refine(...nonEmpty), + count: z + .number() + .int() + .describe("The total number of distinct skill proficiencies the background can grant.") + .min(1) + .max(4), // Maximum only exists as an extra guard against typos; if anything official or homebrew would legitimately break it, it can be removed. + }) + .describe("The skills in which the background can grant proficiency.") + .strict() .optional(), - "Grants situational benefit": z - .literal(true) - .describe("The background grants a passive benefit that isn't otherwise categorisable. For example, this would apply if the background grants a +1 circumstance bonus to Seek on cloudy days.") + gainedFeats: z + .object({ + options: z + .array(referenceTarget) + .describe("A list of feats the background can grant.") + .min(1) + .refine(...uniqueObjects), + count: z + .number() + .int() + .describe("The total number of feats the background can grant.") + .min(1) + .max(2), // Maximum only exists as an extra guard against typos; if anything official or homebrew would legitimately break it, it can be removed. + }) + .describe("The feats the background grants.") + .strict() .optional(), - "Has drawback": z - .literal(true) - .describe("The background comes with an objective, mandatory drawback, such as a penalty to some check or the inability to use an item or spell; not something that is both good and bad.") + gainedSpells: z + .object({ + options: z + .array(referenceTarget) + .describe("A list of spells the background can grant.") + .min(1) + .refine(...uniqueObjects), + count: z + .number() + .int() + .describe("The total number of feats the background can grant.") + .min(1) + .max(2), // Maximum only exists as an extra guard against typos; if anything official or homebrew would legitimately break it, it can be removed. + }) + .describe("The spells the background grants.") + .strict() .optional(), - "GM influence": z - .literal(true) - .describe("The GM determines some mechanical aspect of the background. For instance, this would apply if the background specifies that the GM alone chooses one of the boosts or the type of Lore skill it grants.") + misc: z + .object({ + "Grants ability": z + .literal(true) + .describe("The background background grants an active, voluntary ability.") + .optional(), + "Grants equipment": z + .literal(true) + .describe("The background grants a free item (not just access or proficiency—the actual concrete thing).") + .optional(), + "Grants language": z.literal(true).describe("The background grants a language.").optional(), + "Grants resistance": z + .literal(true) + .describe("The background grants a damage resistance.") + .optional(), + "Grants sense": z + .literal(true) + .describe("The background grants a sense (e.g. darkvision, scent).") + .optional(), + "Grants situational benefit": z + .literal(true) + .describe("The background grants a passive benefit that isn't otherwise categorisable. For example, this would apply if the background grants a +1 circumstance bonus to Seek on cloudy days.") + .optional(), + "Has drawback": z + .literal(true) + .describe("The background comes with an objective, mandatory drawback, such as a penalty to some check or the inability to use an item or spell; not something that is both good and bad.") + .optional(), + "GM influence": z + .literal(true) + .describe("The GM determines some mechanical aspect of the background. For instance, this would apply if the background specifies that the GM alone chooses one of the boosts or the type of Lore skill it grants.") + .optional(), + }) + .describe("Miscellaneous tags") + .strict() + .refine(...nonEmpty) .optional(), }) - .describe("Miscellaneous tags") .strict() .refine(...nonEmpty) .optional(), }) + .describe("An object describing the content for filtering, searching, and sorting.") .strict() - .refine(...nonEmpty) .optional(), }) .describe("A condition") - .strict()); + .strict(); diff --git a/_dist/zod/content/condition.d.ts b/_dist/zod/content/condition.d.ts index 2cf90f7..c9608ed 100644 --- a/_dist/zod/content/condition.d.ts +++ b/_dist/zod/content/condition.d.ts @@ -135,10 +135,9 @@ export declare const condition: z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { type: z.ZodLiteral<"condition">; - data: z.ZodObject<{ + data: z.ZodOptional]>, "many">; + _tags: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, "strip", z.ZodLiteral, z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip">>>; + }, "strict", z.ZodTypeAny, { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }, { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }>, { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }, { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }>>; }, "strict", z.ZodTypeAny, { entries: (string | { type: string; })[]; + _tags?: { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; }, { entries: (string | { type: string; })[]; - }>; - tags: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; - }, "strict", z.ZodTypeAny, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>, { - group?: z.objectOutputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - group?: z.objectInputType<{ - Attitudes: z.ZodOptional>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; + _tags?: { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; }>>; }>, "strict", z.ZodTypeAny, { type: "condition"; - data: { - entries: (string | { - type: string; - })[]; - }; source: { ID: string; page?: number | undefined; @@ -248,14 +260,19 @@ export declare const condition: z.ZodObject>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + group?: z.objectOutputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -275,11 +292,6 @@ export declare const condition: z.ZodObject>; - "Death and Dying": z.ZodOptional>; - "Degrees of Detection": z.ZodOptional>; - "Lowered Abilities": z.ZodOptional>; - Senses: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; + data?: { + entries: (string | { + type: string; + })[]; + _tags?: { + group?: z.objectInputType<{ + Attitudes: z.ZodOptional>; + "Death and Dying": z.ZodOptional>; + "Degrees of Detection": z.ZodOptional>; + "Lowered Abilities": z.ZodOptional>; + Senses: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; diff --git a/_dist/zod/content/condition.js b/_dist/zod/content/condition.js index 20432bb..cc2fdd8 100644 --- a/_dist/zod/content/condition.js +++ b/_dist/zod/content/condition.js @@ -3,45 +3,47 @@ import { contentTemplate } from "../contentTemplate.js"; import { entries } from "./common/entries.js"; import { nonEmpty } from "../utils/nonEmpty.js"; import { titleCaseProperties } from "../utils/titleCaseProperties.js"; -export const condition = contentTemplate.merge(z - .object({ +export const condition = contentTemplate + .extend({ type: z.literal("condition"), data: z .object({ entries: entries, - }) - .strict(), - tags: z - .object({ - group: z + _tags: z .object({ - Attitudes: z - .literal(true) - .describe("The condition is in the 'Attitudes' group (CRB p619).") - .optional(), - "Death and Dying": z - .literal(true) - .describe("The condition is in the 'Death and Dying' group (CRB p619).") - .optional(), - "Degrees of Detection": z - .literal(true) - .describe("The condition is in the 'Degrees of Detection' group (CRB p619).") - .optional(), - "Lowered Abilities": z - .literal(true) - .describe("The condition is in the 'Lowered Abilities' group (CRB p619).") + group: z + .object({ + Attitudes: z + .literal(true) + .describe("The condition is in the 'Attitudes' group (CRB p619).") + .optional(), + "Death and Dying": z + .literal(true) + .describe("The condition is in the 'Death and Dying' group (CRB p619).") + .optional(), + "Degrees of Detection": z + .literal(true) + .describe("The condition is in the 'Degrees of Detection' group (CRB p619).") + .optional(), + "Lowered Abilities": z + .literal(true) + .describe("The condition is in the 'Lowered Abilities' group (CRB p619).") + .optional(), + Senses: z.literal(true).describe("The condition is in the 'Senses' group (CRB p619).").optional(), + }) + .describe("An object containing any groups the condition belongs to. The properties should be in title case.") + .catchall(z.literal(true)) + .refine(...nonEmpty) + .refine(...titleCaseProperties) .optional(), - Senses: z.literal(true).describe("The condition is in the 'Senses' group (CRB p619).").optional(), }) - .describe("An object containing any groups the condition belongs to. The properties should be in title case.") - .catchall(z.literal(true)) + .strict() .refine(...nonEmpty) - .refine(...titleCaseProperties) .optional(), }) + .describe("An object describing the content for filtering, searching, and sorting.") .strict() - .refine(...nonEmpty) .optional(), }) .describe("A condition") - .strict()); + .strict(); diff --git a/_dist/zod/content/divineIntercession.d.ts b/_dist/zod/content/divineIntercession.d.ts deleted file mode 100644 index fde6fb4..0000000 --- a/_dist/zod/content/divineIntercession.d.ts +++ /dev/null @@ -1,425 +0,0 @@ -import { z } from "zod"; -export declare const divineIntercession: z.ZodObject; - aliases: z.ZodOptional, string[], string[]>>; - specifier: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }, { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }>; - source: z.ZodObject<{ - ID: z.ZodEffects; - page: z.ZodOptional; - }, "strict", z.ZodTypeAny, { - ID: string; - page?: number | undefined; - }, { - ID: string; - page?: number | undefined; - }>; - data: z.ZodOptional>; - reference: z.ZodOptional; - target: z.ZodObject<{ - name: z.ZodString; - specifier: z.ZodOptional; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - modifications: z.ZodOptional; - }, "strip", z.ZodTypeAny, { - property: string; - name?: string | undefined; - }, { - property: string; - name?: string | undefined; - }>; - value: z.ZodOptional, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, z.ZodArray, z.ZodBoolean]>>; - }, "strip", z.ZodTypeAny, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }>, "many">, { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[], { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[]>>; - }, "strict", z.ZodTypeAny, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }, { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - }>>; - tags: z.ZodOptional>; -}, { - type: z.ZodLiteral<"divineIntercession">; - data: z.ZodEffects; - sourceID: z.ZodEffects; - }, "strict", z.ZodTypeAny, { - name: string; - sourceID: string; - specifier?: string | undefined; - }, { - name: string; - sourceID: string; - specifier?: string | undefined; - }>; - preamble: z.ZodOptional]>, "many">>; - "Minor Boon": z.ZodOptional]>, "many">>; - "Moderate Boon": z.ZodOptional]>, "many">>; - "Major Boon": z.ZodOptional]>, "many">>; - "Minor Curse": z.ZodOptional]>, "many">>; - "Moderate Curse": z.ZodOptional]>, "many">>; - "Major Curse": z.ZodOptional]>, "many">>; - }, "strict", z.ZodTypeAny, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }>, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }, { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }>; -}>, "strict", z.ZodTypeAny, { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}, { - type: "divineIntercession"; - data: { - deity: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - preamble?: (string | { - type: string; - })[] | undefined; - "Minor Boon"?: (string | { - type: string; - })[] | undefined; - "Moderate Boon"?: (string | { - type: string; - })[] | undefined; - "Major Boon"?: (string | { - type: string; - })[] | undefined; - "Minor Curse"?: (string | { - type: string; - })[] | undefined; - "Moderate Curse"?: (string | { - type: string; - })[] | undefined; - "Major Curse"?: (string | { - type: string; - })[] | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: {} | undefined; - reference?: { - type: "variant" | "reprint" | "replacement" | "extension"; - target: { - name: string; - sourceID: string; - specifier?: string | undefined; - }; - modifications?: { - type: string; - target: { - property: string; - name?: string | undefined; - }; - value?: string | number | boolean | any[] | z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; - }[] | undefined; - } | undefined; -}>; diff --git a/_dist/zod/content/divineIntercession.js b/_dist/zod/content/divineIntercession.js deleted file mode 100644 index 53419ed..0000000 --- a/_dist/zod/content/divineIntercession.js +++ /dev/null @@ -1,26 +0,0 @@ -import { z } from "zod"; -import { contentTemplate } from "../contentTemplate.js"; -import { entries } from "./common/entries.js"; -import { nonEmpty } from "../utils/nonEmpty.js"; -import { referenceTarget } from "./common/referenceTarget.js"; -export const divineIntercession = contentTemplate.merge(z - .object({ - type: z.literal("divineIntercession"), - data: z - .object({ - deity: referenceTarget.describe("The deity whose intercessions are being described."), - preamble: entries - .describe("The flavour text or GM guidance that precedes the boons/curses themselves.") - .optional(), - "Minor Boon": entries.optional(), - "Moderate Boon": entries.optional(), - "Major Boon": entries.optional(), - "Minor Curse": entries.optional(), - "Moderate Curse": entries.optional(), - "Major Curse": entries.optional(), - }) - .strict() - .refine(...nonEmpty), -}) - .describe("A set of divine intercessions") - .strict()); diff --git a/_dist/zod/content/domain.d.ts b/_dist/zod/content/domain.d.ts index 21ead19..63488cc 100644 --- a/_dist/zod/content/domain.d.ts +++ b/_dist/zod/content/domain.d.ts @@ -135,10 +135,9 @@ export declare const domain: z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { type: z.ZodLiteral<"domain">; - data: z.ZodObject<{ + data: z.ZodOptional; domainSpell: z.ZodObject<{ name: z.ZodString; @@ -236,10 +235,19 @@ export declare const domain: z.ZodObject; + }>>; }>, "strict", z.ZodTypeAny, { type: "domain"; - data: { + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { domainSpell: { name: string; sourceID: string; @@ -261,17 +269,7 @@ export declare const domain: z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { type: z.ZodLiteral<"event">; - data: z.ZodObject<{ + data: z.ZodOptional; + }>>; }>, "strict", z.ZodTypeAny, { type: "event"; - data: { + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { entries: (string | { type: string; })[]; @@ -237,17 +245,7 @@ export declare const event: z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { type: z.ZodLiteral<"familiarAbility">; - data: z.ZodObject<{ + data: z.ZodOptional; entries: z.ZodArray]>, "many">; + _tags: z.ZodOptional>; + affectsSenses: z.ZodOptional>; + affectsMovement: z.ZodOptional>; + hasRequirement: z.ZodOptional>; + grantsAbility: z.ZodOptional>; + repeatable: z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }>, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }, { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + }>>; + }, "strict", z.ZodTypeAny, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }>, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }, { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + }>>; }, "strict", z.ZodTypeAny, { entries: (string | { type: string; })[]; abilityType: "Familiar" | "Master"; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; + } | undefined; }, { entries: (string | { type: string; })[]; abilityType: "Familiar" | "Master"; - }>; - tags: z.ZodOptional>; - affectsSenses: z.ZodOptional>; - affectsMovement: z.ZodOptional>; - hasRequirement: z.ZodOptional>; - grantsAbility: z.ZodOptional>; - repeatable: z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }>, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }, { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }>, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; - } | undefined; - }, { - misc?: { - affectsCommunication?: true | undefined; - affectsSenses?: true | undefined; - affectsMovement?: true | undefined; - hasRequirement?: true | undefined; - grantsAbility?: true | undefined; - repeatable?: true | undefined; + _tags?: { + misc?: { + affectsCommunication?: true | undefined; + affectsSenses?: true | undefined; + affectsMovement?: true | undefined; + hasRequirement?: true | undefined; + grantsAbility?: true | undefined; + repeatable?: true | undefined; + } | undefined; } | undefined; }>>; }>, "strict", z.ZodTypeAny, { type: "familiarAbility"; - data: { - entries: (string | { - type: string; - })[]; - abilityType: "Familiar" | "Master"; - }; source: { ID: string; page?: number | undefined; @@ -249,14 +262,20 @@ export declare const familiarAbility: z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { type: z.ZodLiteral<"relicGift">; - data: z.ZodObject<{ + data: z.ZodOptional]>, "many">; + _tags: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, "strip", z.ZodLiteral, z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">>, z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">, z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip">>>; + misc: z.ZodOptional>; + "Grants ability": z.ZodOptional>; + "Grants passive attribute": z.ZodOptional>; + "Is rune": z.ZodOptional>; + "Soul seed": z.ZodOptional>; + }, "strict", z.ZodTypeAny, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }>, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }, { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + }>>; + }, "strict", z.ZodTypeAny, { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }, { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }>, { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectOutputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }, { + misc?: { + "Grants ability"?: true | undefined; + "Alters relic"?: true | undefined; + "Grants passive attribute"?: true | undefined; + "Is rune"?: true | undefined; + "Soul seed"?: true | undefined; + } | undefined; + itemTypes?: z.objectInputType<{ + Armor: z.ZodOptional>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + }>>; }, "strict", z.ZodTypeAny, { entries: (string | { type: string; @@ -188,6 +301,20 @@ export declare const relicGift: z.ZodObject>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; traits?: { trait: string; display?: string | undefined; @@ -203,130 +330,39 @@ export declare const relicGift: z.ZodObject>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; traits?: { trait: string; display?: string | undefined; variables?: string[] | undefined; }[] | undefined; prerequisites?: string | undefined; - }>; - tags: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, "strip", z.ZodLiteral, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>, z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">, z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip">>>; - misc: z.ZodOptional>; - "Grants ability": z.ZodOptional>; - "Grants passive attribute": z.ZodOptional>; - "Is rune": z.ZodOptional>; - "Soul seed": z.ZodOptional>; - }, "strict", z.ZodTypeAny, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }>, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }, { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - }>>; - }, "strict", z.ZodTypeAny, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }>, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; - }, { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; }>>; }>, "strict", z.ZodTypeAny, { type: "relicGift"; - data: { + source: { + ID: string; + page?: number | undefined; + }; + name: { + primary: string; + aliases?: string[] | undefined; + specifier?: string | undefined; + }; + data?: { entries: (string | { type: string; })[]; @@ -335,35 +371,26 @@ export declare const relicGift: z.ZodObject>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; traits?: { trait: string; display?: string | undefined; variables?: string[] | undefined; }[] | undefined; prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectOutputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; @@ -383,7 +410,16 @@ export declare const relicGift: z.ZodObject>; + "Worn Item": z.ZodOptional>; + Weapon: z.ZodOptional>; + }, z.ZodLiteral, "strip"> | undefined; + } | undefined; traits?: { trait: string; display?: string | undefined; variables?: string[] | undefined; }[] | undefined; prerequisites?: string | undefined; - }; - source: { - ID: string; - page?: number | undefined; - }; - name: { - primary: string; - aliases?: string[] | undefined; - specifier?: string | undefined; - }; - tags?: { - misc?: { - "Grants ability"?: true | undefined; - "Alters relic"?: true | undefined; - "Grants passive attribute"?: true | undefined; - "Is rune"?: true | undefined; - "Soul seed"?: true | undefined; - } | undefined; - itemTypes?: z.objectInputType<{ - Armor: z.ZodOptional>; - "Worn Item": z.ZodOptional>; - Weapon: z.ZodOptional>; - }, z.ZodLiteral, "strip"> | undefined; } | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; diff --git a/_dist/zod/content/relicGift.js b/_dist/zod/content/relicGift.js index ac52115..e0d5a10 100644 --- a/_dist/zod/content/relicGift.js +++ b/_dist/zod/content/relicGift.js @@ -5,8 +5,8 @@ import { traits } from "./common/traits.js"; import { nonEmpty } from "../utils/nonEmpty.js"; import { titleCaseProperties } from "../utils/titleCaseProperties.js"; import { entryString } from "./common/entryString.js"; -export const relicGift = contentTemplate.merge(z - .object({ +export const relicGift = contentTemplate + .extend({ type: z.literal("relicGift"), data: z .object({ @@ -28,52 +28,57 @@ export const relicGift = contentTemplate.merge(z .strict()), prerequisites: entryString.optional(), entries: entries, - }) - .strict(), - tags: z - .object({ - itemTypes: z + _tags: z .object({ - Armor: z - .literal(true) - .describe("The relic must be a piece or suit of armour to have this gift.") - .optional(), - "Worn Item": z.literal(true).describe("The relic must be a worn item to have this gift.").optional(), - Weapon: z.literal(true).describe("The relic must be a weapon to have this gift.").optional(), - }) - .describe("An object containing the types of item the relic must be in order to have this gift. The properties should be in title case.") - .catchall(z.literal(true)) - .refine(...nonEmpty) - .refine(...titleCaseProperties) - .optional(), - misc: z - .object({ - "Alters relic": z - .literal(true) - .describe("The gift permanently changes the relic's nature in some way.") - .optional(), - "Grants ability": z - .literal(true) - .describe("The gift grants the character a new, activatable ability (including spells).") - .optional(), - "Grants passive attribute": z - .literal(true) - .describe("The gift grants the character a new Speed, a damage resistance, an automatic bonus, or another always-active ability.") + itemTypes: z + .object({ + Armor: z + .literal(true) + .describe("The relic must be a piece or suit of armour to have this gift.") + .optional(), + "Worn Item": z + .literal(true) + .describe("The relic must be a worn item to have this gift.") + .optional(), + Weapon: z.literal(true).describe("The relic must be a weapon to have this gift.").optional(), + }) + .describe("An object containing the types of item the relic must be in order to have this gift. The properties should be in title case.") + .catchall(z.literal(true)) + .refine(...nonEmpty) + .refine(...titleCaseProperties) .optional(), - "Is rune": z.literal(true).describe("The gift mimics the effect of a rune.").optional(), - "Soul seed": z - .literal(true) - .describe('The gift is "particularly appropriate" for soul seeds (SoM p230).') + misc: z + .object({ + "Alters relic": z + .literal(true) + .describe("The gift permanently changes the relic's nature in some way.") + .optional(), + "Grants ability": z + .literal(true) + .describe("The gift grants the character a new, activatable ability (including spells).") + .optional(), + "Grants passive attribute": z + .literal(true) + .describe("The gift grants the character a new Speed, a damage resistance, an automatic bonus, or another always-active ability.") + .optional(), + "Is rune": z.literal(true).describe("The gift mimics the effect of a rune.").optional(), + "Soul seed": z + .literal(true) + .describe('The gift is "particularly appropriate" for soul seeds (SoM p230).') + .optional(), + }) + .describe("Miscellaneous tags") + .strict() + .refine(...nonEmpty) .optional(), }) - .describe("Miscellaneous tags") .strict() .refine(...nonEmpty) .optional(), }) + .describe("An object describing the content for filtering, searching, and sorting.") .strict() - .refine(...nonEmpty) .optional(), }) .describe("A relic gift") - .strict()); + .strict(); diff --git a/_dist/zod/content/skill.d.ts b/_dist/zod/content/skill.d.ts index f5135e1..9af6eec 100644 --- a/_dist/zod/content/skill.d.ts +++ b/_dist/zod/content/skill.d.ts @@ -135,7 +135,6 @@ export declare const skill: z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; }, { type: z.ZodLiteral<"skill">; data: z.ZodObject<{ @@ -171,7 +170,6 @@ export declare const skill: z.ZodObject | undefined; }[] | undefined; }>>; - tags: z.ZodOptional>; -}, "strip", z.ZodTypeAny, { +}, "strict", z.ZodTypeAny, { type: string; source: { ID: string; @@ -148,7 +147,6 @@ export declare const contentTemplate: z.ZodObject<{ specifier?: string | undefined; }; data?: {} | undefined; - tags?: {} | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { @@ -177,7 +175,6 @@ export declare const contentTemplate: z.ZodObject<{ specifier?: string | undefined; }; data?: {} | undefined; - tags?: {} | undefined; reference?: { type: "variant" | "reprint" | "replacement" | "extension"; target: { diff --git a/_dist/zod/contentTemplate.js b/_dist/zod/contentTemplate.js index 3a335b3..a6a7cae 100644 --- a/_dist/zod/contentTemplate.js +++ b/_dist/zod/contentTemplate.js @@ -2,7 +2,6 @@ import { z } from "zod"; import { name } from "./content/common/name.js"; import { contentSource } from "./content/common/contentSource.js"; import { reference } from "./content/common/reference.js"; -// import { nonEmpty } from "./utils/nonEmpty.js"; export const contentTemplate = z .object({ type: z.string().describe("The type of data described."), @@ -10,12 +9,6 @@ export const contentTemplate = z source: contentSource, data: z.object({}).describe("An object representing the data itself.").optional(), reference: reference.optional(), - tags: z - .object({}) - .describe("An object describing the content for filtering, searching, and sorting.") - .optional(), }) - .describe("This is the general form of 'content' files (e.g. statblocks)."); -// .strict() -// .refine(...nonEmpty); -// .refine((content) => !!content.data !== !!content.reference); // Either `data` or `reference` exist + .describe("This is the general form of 'content' files (e.g. statblocks).") + .strict(); diff --git a/_dist/zod/indexes/datatypes.d.ts b/_dist/zod/indexes/datatypes.d.ts index 932cfdd..fc28865 100644 --- a/_dist/zod/indexes/datatypes.d.ts +++ b/_dist/zod/indexes/datatypes.d.ts @@ -1,5 +1,5 @@ import { z } from "zod"; -export declare const contentDatatype: z.ZodEnum<["background", "condition", "divineIntercession", "domain", "event", "familiarAbility", "relicGift", "skill"]>; +export declare const contentDatatype: z.ZodEnum<["background", "condition", "domain", "event", "familiarAbility", "relicGift", "skill"]>; export declare const metaDatatype: z.ZodEnum<["license", "source", "sourceGroup"]>; -export declare const datatype: z.ZodUnion<[z.ZodEnum<["background", "condition", "divineIntercession", "domain", "event", "familiarAbility", "relicGift", "skill"]>, z.ZodEnum<["license", "source", "sourceGroup"]>]>; -export declare const datatypes: z.ZodArray, z.ZodEnum<["license", "source", "sourceGroup"]>]>, "many">; +export declare const datatype: z.ZodUnion<[z.ZodEnum<["background", "condition", "domain", "event", "familiarAbility", "relicGift", "skill"]>, z.ZodEnum<["license", "source", "sourceGroup"]>]>; +export declare const datatypes: z.ZodArray, z.ZodEnum<["license", "source", "sourceGroup"]>]>, "many">; diff --git a/_dist/zod/indexes/datatypes.js b/_dist/zod/indexes/datatypes.js index 1365220..18c5d98 100644 --- a/_dist/zod/indexes/datatypes.js +++ b/_dist/zod/indexes/datatypes.js @@ -4,7 +4,6 @@ export const contentDatatype = z .enum([ "background", "condition", - "divineIntercession", "domain", "event", "familiarAbility", diff --git a/_dist/zod/indexes/homebrewSources.d.ts b/_dist/zod/indexes/homebrewSources.d.ts index bf49c75..9295189 100644 --- a/_dist/zod/indexes/homebrewSources.d.ts +++ b/_dist/zod/indexes/homebrewSources.d.ts @@ -23,7 +23,7 @@ export declare const homebrewSourceSummary: z.ZodObject>; "Blog post": z.ZodOptional>; @@ -188,7 +188,7 @@ export declare const homebrewSourceSummary: z.ZodObject>; - datatypes: z.ZodArray, z.ZodEnum<["license", "source", "sourceGroup"]>]>, "many">; + datatypes: z.ZodArray, z.ZodEnum<["license", "source", "sourceGroup"]>]>, "many">; sourceURL: z.ZodOptional; }>, "strict", z.ZodTypeAny, { path: string; @@ -198,8 +198,8 @@ export declare const homebrewSourceSummary: z.ZodObject>; "Blog post": z.ZodOptional>; @@ -442,7 +442,7 @@ export declare const homebrewSources: z.ZodArray>; - datatypes: z.ZodArray, z.ZodEnum<["license", "source", "sourceGroup"]>]>, "many">; + datatypes: z.ZodArray, z.ZodEnum<["license", "source", "sourceGroup"]>]>, "many">; sourceURL: z.ZodOptional; }>, { ID: z.ZodEffects; @@ -455,8 +455,8 @@ export declare const homebrewSources: z.ZodArray>; "Blog post": z.ZodOptional>; @@ -700,7 +700,7 @@ export declare const homebrewSourcesRecord: z.ZodEffects>; - datatypes: z.ZodArray, z.ZodEnum<["license", "source", "sourceGroup"]>]>, "many">; + datatypes: z.ZodArray, z.ZodEnum<["license", "source", "sourceGroup"]>]>, "many">; sourceURL: z.ZodOptional; }>, "strict", z.ZodTypeAny, { path: string; @@ -710,8 +710,8 @@ export declare const homebrewSourcesRecord: z.ZodEffects; - tags: z.ZodOptional>; "Blog post": z.ZodOptional>; @@ -472,7 +472,7 @@ export declare const source: z.ZodObject<{ full: string; }; ID: string; - tags?: { + _tags?: { status?: { "Missing content"?: true | undefined; "Missing tags"?: true | undefined; @@ -517,7 +517,7 @@ export declare const source: z.ZodObject<{ full: string; }; ID: string; - tags?: { + _tags?: { status?: { "Missing content"?: true | undefined; "Missing tags"?: true | undefined; diff --git a/_dist/zod/source.js b/_dist/zod/source.js index 8692ae9..227b1b5 100644 --- a/_dist/zod/source.js +++ b/_dist/zod/source.js @@ -164,6 +164,6 @@ export const source = z .describe("An object representing the source's name") .strict(), data: sourceData, - tags: sourceTags, + _tags: sourceTags, }) .strict(); diff --git a/_dist/zod/sourceGroup.d.ts b/_dist/zod/sourceGroup.d.ts index 4ddaf85..2877b7b 100644 --- a/_dist/zod/sourceGroup.d.ts +++ b/_dist/zod/sourceGroup.d.ts @@ -23,7 +23,7 @@ export declare const sourceGroup: z.ZodObject<{ }, { publisher: string; }>>; - tags: z.ZodOptional>; Ongoing: z.ZodOptional>; @@ -71,7 +71,7 @@ export declare const sourceGroup: z.ZodObject<{ data?: { publisher: string; } | undefined; - tags?: { + _tags?: { misc: { Ongoing?: true | undefined; Adventure?: true | undefined; @@ -87,7 +87,7 @@ export declare const sourceGroup: z.ZodObject<{ data?: { publisher: string; } | undefined; - tags?: { + _tags?: { misc: { Ongoing?: true | undefined; Adventure?: true | undefined; diff --git a/_dist/zod/sourceGroup.js b/_dist/zod/sourceGroup.js index efb83b8..0def027 100644 --- a/_dist/zod/sourceGroup.js +++ b/_dist/zod/sourceGroup.js @@ -29,7 +29,7 @@ export const sourceGroup = z .strict() .refine(...nonEmpty) .optional(), - tags: z + _tags: z .object({ misc: z .object({ diff --git a/zod/_bundle.ts b/zod/_bundle.ts index 37e64ee..470399c 100644 --- a/zod/_bundle.ts +++ b/zod/_bundle.ts @@ -1,31 +1,35 @@ -// This file was generated by scripts/generate-zod-combinedTypes.js at Sat, 27 Apr 2024 00:53:14 GMT +// This file was generated by scripts/generate-zod-combinedTypes.js at Thu, 16 May 2024 00:49:20 GMT -import { z } from "zod"; +import { z, type AnyZodObject } from "zod"; import { license } from "./license.js"; import { source } from "./source.js"; import { sourceGroup } from "./sourceGroup.js"; import { background } from "./content/background.js"; import { condition } from "./content/condition.js"; -import { divineIntercession } from "./content/divineIntercession.js"; import { domain } from "./content/domain.js"; import { event } from "./content/event.js"; import { familiarAbility } from "./content/familiarAbility.js"; import { relicGift } from "./content/relicGift.js"; import { skill } from "./content/skill.js"; +const refineContent = (content: AnyZodObject) => + content.refine( + (content) => (content.reference ? !!content.data !== !!content.reference.modifications : content.data), + "`data` and `reference.modifications` cannot be used simultaneously; choose one method to describe the content.", + ); + export const bundle = z.object({ license: z.array(license).min(1).optional(), source: z.array(source).min(1), sourceGroup: z.array(sourceGroup).min(1).optional(), - background: z.array(background).min(1).optional(), - condition: z.array(condition).min(1).optional(), - divineIntercession: z.array(divineIntercession).min(1).optional(), - domain: z.array(domain).min(1).optional(), - event: z.array(event).min(1).optional(), - familiarAbility: z.array(familiarAbility).min(1).optional(), - relicGift: z.array(relicGift).min(1).optional(), - skill: z.array(skill).min(1).optional(), + background: z.array(refineContent(background)).min(1).optional(), + condition: z.array(refineContent(condition)).min(1).optional(), + domain: z.array(refineContent(domain)).min(1).optional(), + event: z.array(refineContent(event)).min(1).optional(), + familiarAbility: z.array(refineContent(familiarAbility)).min(1).optional(), + relicGift: z.array(refineContent(relicGift)).min(1).optional(), + skill: z.array(refineContent(skill)).min(1).optional(), }); import { nonEmpty } from "./utils/nonEmpty.js"; diff --git a/zod/_content.ts b/zod/_content.ts index 8b51918..16558ce 100644 --- a/zod/_content.ts +++ b/zod/_content.ts @@ -1,23 +1,18 @@ -// This file was generated by scripts/generate-zod-combinedTypes.js at Sat, 27 Apr 2024 00:53:14 GMT +// This file was generated by scripts/generate-zod-combinedTypes.js at Thu, 16 May 2024 00:49:20 GMT import { z } from "zod"; import { background } from "./content/background.js"; import { condition } from "./content/condition.js"; -import { divineIntercession } from "./content/divineIntercession.js"; import { domain } from "./content/domain.js"; import { event } from "./content/event.js"; import { familiarAbility } from "./content/familiarAbility.js"; import { relicGift } from "./content/relicGift.js"; import { skill } from "./content/skill.js"; -export const content = z.discriminatedUnion("type", [ - background, - condition, - divineIntercession, - domain, - event, - familiarAbility, - relicGift, - skill, -]); +export const content = z + .discriminatedUnion("type", [background, condition, domain, event, familiarAbility, relicGift, skill]) + .refine( + (content) => (content.reference ? !!content.data !== !!content.reference.modifications : content.data), + "`data` and `reference.modifications` cannot be used simultaneously; choose one method to describe the content.", + ); diff --git a/zod/_data.ts b/zod/_data.ts index eb4d4cd..e434e4b 100644 --- a/zod/_data.ts +++ b/zod/_data.ts @@ -1,29 +1,12 @@ -// This file was generated by scripts/generate-zod-combinedTypes.js at Sat, 27 Apr 2024 00:53:14 GMT +// This file was generated by scripts/generate-zod-combinedTypes.js at Thu, 16 May 2024 00:49:20 GMT import { z } from "zod"; import { license } from "./license.js"; import { source } from "./source.js"; import { sourceGroup } from "./sourceGroup.js"; -import { background } from "./content/background.js"; -import { condition } from "./content/condition.js"; -import { divineIntercession } from "./content/divineIntercession.js"; -import { domain } from "./content/domain.js"; -import { event } from "./content/event.js"; -import { familiarAbility } from "./content/familiarAbility.js"; -import { relicGift } from "./content/relicGift.js"; -import { skill } from "./content/skill.js"; -export const data = z.discriminatedUnion("type", [ - license, - source, - sourceGroup, - background, - condition, - divineIntercession, - domain, - event, - familiarAbility, - relicGift, - skill, -]); +const metaType = z.discriminatedUnion("type", [license, source, sourceGroup]); + +import { content } from "./_content.js"; +export const data = content.or(metaType); diff --git a/zod/_index.ts b/zod/_index.ts index d163cee..9fa6166 100644 --- a/zod/_index.ts +++ b/zod/_index.ts @@ -1,4 +1,4 @@ -// This file was generated by scripts/generate-zod-index.js at Sat, 27 Apr 2024 00:53:15 GMT +// This file was generated by scripts/generate-zod-index.js at Thu, 16 May 2024 00:49:21 GMT // . export { contentTemplate } from "./contentTemplate.js"; @@ -8,12 +8,10 @@ export { sourceGroup } from "./sourceGroup.js"; export { bundle } from "./_bundle.js"; export { content } from "./_content.js"; export { data } from "./_data.js"; -export { statblock } from "./_statblock.js"; // content export { background } from "./content/background.js"; export { condition } from "./content/condition.js"; -export { divineIntercession } from "./content/divineIntercession.js"; export { domain } from "./content/domain.js"; export { event } from "./content/event.js"; export { familiarAbility } from "./content/familiarAbility.js"; diff --git a/zod/indexes/datatypes.ts b/zod/indexes/datatypes.ts index 7749c97..64f2b8e 100644 --- a/zod/indexes/datatypes.ts +++ b/zod/indexes/datatypes.ts @@ -2,15 +2,7 @@ import { z } from "zod"; // TODO: find a way to auto-generate this? export const contentDatatype = z - .enum([ - "background", - "condition", - "domain", - "event", - "familiarAbility", - "relicGift", - "skill", - ]) + .enum(["background", "condition", "domain", "event", "familiarAbility", "relicGift", "skill"]) .describe("A content datatype's name, as it appears in the JSON data itself."); export const metaDatatype = z