@roottale/cms-core 0.67.0 → 0.68.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -739,192 +739,589 @@ interface MetadataResolutionInput {
739
739
  /** 글·분류·코드 경로가 공유하는 순수 해석기. false는 상속을 덮는 명시값이다. */
740
740
  declare function resolveMetadata(input: MetadataResolutionInput): MetadataValues;
741
741
 
742
- /** A fixed set of content cleanup rules; never accept executable expressions or caller regexes. */
743
- declare const MetadataTextRuleSchema: z.ZodEffects<z.ZodObject<{
744
- source: z.ZodOptional<z.ZodEnum<["content", "fallback"]>>;
742
+ /** A fixed set of content rules; never accept executable expressions or caller regexes. */
743
+ declare const MetadataTextRuleSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
744
+ source: z.ZodOptional<z.ZodEnum<["content", "fallback", "template"]>>;
745
+ template: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
745
746
  stripLeadingLabel: z.ZodOptional<z.ZodEnum<["question", "answer"]>>;
746
747
  replaceLineBreakTokens: z.ZodOptional<z.ZodBoolean>;
747
748
  removeEmDashes: z.ZodOptional<z.ZodBoolean>;
748
749
  normalizeWhitespace: z.ZodOptional<z.ZodBoolean>;
749
750
  maxLength: z.ZodOptional<z.ZodNumber>;
751
+ lengthUnit: z.ZodOptional<z.ZodEnum<["code-units", "code-points"]>>;
752
+ wordBoundaryMinLength: z.ZodOptional<z.ZodNumber>;
750
753
  ellipsis: z.ZodOptional<z.ZodString>;
754
+ bodyFallback: z.ZodOptional<z.ZodObject<{
755
+ preferContaining: z.ZodOptional<z.ZodString>;
756
+ stripLeadingLabel: z.ZodOptional<z.ZodLiteral<"conclusion">>;
757
+ }, "strict", z.ZodTypeAny, {
758
+ stripLeadingLabel?: "conclusion" | undefined;
759
+ preferContaining?: string | undefined;
760
+ }, {
761
+ stripLeadingLabel?: "conclusion" | undefined;
762
+ preferContaining?: string | undefined;
763
+ }>>;
751
764
  fallback: z.ZodOptional<z.ZodString>;
752
765
  fallbackWithParent: z.ZodOptional<z.ZodString>;
753
766
  fallbackWithoutParent: z.ZodOptional<z.ZodString>;
754
767
  fallbackBySlug: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
755
768
  }, "strict", z.ZodTypeAny, {
756
- source?: "content" | "fallback" | undefined;
769
+ source?: "template" | "content" | "fallback" | undefined;
770
+ template?: string | undefined;
771
+ fallback?: string | undefined;
772
+ stripLeadingLabel?: "question" | "answer" | undefined;
773
+ replaceLineBreakTokens?: boolean | undefined;
774
+ removeEmDashes?: boolean | undefined;
775
+ normalizeWhitespace?: boolean | undefined;
776
+ maxLength?: number | undefined;
777
+ lengthUnit?: "code-units" | "code-points" | undefined;
778
+ wordBoundaryMinLength?: number | undefined;
779
+ ellipsis?: string | undefined;
780
+ bodyFallback?: {
781
+ stripLeadingLabel?: "conclusion" | undefined;
782
+ preferContaining?: string | undefined;
783
+ } | undefined;
784
+ fallbackWithParent?: string | undefined;
785
+ fallbackWithoutParent?: string | undefined;
786
+ fallbackBySlug?: Record<string, string> | undefined;
787
+ }, {
788
+ source?: "template" | "content" | "fallback" | undefined;
789
+ template?: string | undefined;
790
+ fallback?: string | undefined;
791
+ stripLeadingLabel?: "question" | "answer" | undefined;
792
+ replaceLineBreakTokens?: boolean | undefined;
793
+ removeEmDashes?: boolean | undefined;
794
+ normalizeWhitespace?: boolean | undefined;
795
+ maxLength?: number | undefined;
796
+ lengthUnit?: "code-units" | "code-points" | undefined;
797
+ wordBoundaryMinLength?: number | undefined;
798
+ ellipsis?: string | undefined;
799
+ bodyFallback?: {
800
+ stripLeadingLabel?: "conclusion" | undefined;
801
+ preferContaining?: string | undefined;
802
+ } | undefined;
803
+ fallbackWithParent?: string | undefined;
804
+ fallbackWithoutParent?: string | undefined;
805
+ fallbackBySlug?: Record<string, string> | undefined;
806
+ }>, {
807
+ source?: "template" | "content" | "fallback" | undefined;
808
+ template?: string | undefined;
809
+ fallback?: string | undefined;
810
+ stripLeadingLabel?: "question" | "answer" | undefined;
811
+ replaceLineBreakTokens?: boolean | undefined;
812
+ removeEmDashes?: boolean | undefined;
813
+ normalizeWhitespace?: boolean | undefined;
814
+ maxLength?: number | undefined;
815
+ lengthUnit?: "code-units" | "code-points" | undefined;
816
+ wordBoundaryMinLength?: number | undefined;
817
+ ellipsis?: string | undefined;
818
+ bodyFallback?: {
819
+ stripLeadingLabel?: "conclusion" | undefined;
820
+ preferContaining?: string | undefined;
821
+ } | undefined;
822
+ fallbackWithParent?: string | undefined;
823
+ fallbackWithoutParent?: string | undefined;
824
+ fallbackBySlug?: Record<string, string> | undefined;
825
+ }, {
826
+ source?: "template" | "content" | "fallback" | undefined;
827
+ template?: string | undefined;
757
828
  fallback?: string | undefined;
758
829
  stripLeadingLabel?: "question" | "answer" | undefined;
759
830
  replaceLineBreakTokens?: boolean | undefined;
760
831
  removeEmDashes?: boolean | undefined;
761
832
  normalizeWhitespace?: boolean | undefined;
762
833
  maxLength?: number | undefined;
834
+ lengthUnit?: "code-units" | "code-points" | undefined;
835
+ wordBoundaryMinLength?: number | undefined;
763
836
  ellipsis?: string | undefined;
837
+ bodyFallback?: {
838
+ stripLeadingLabel?: "conclusion" | undefined;
839
+ preferContaining?: string | undefined;
840
+ } | undefined;
841
+ fallbackWithParent?: string | undefined;
842
+ fallbackWithoutParent?: string | undefined;
843
+ fallbackBySlug?: Record<string, string> | undefined;
844
+ }>, {
845
+ source?: "template" | "content" | "fallback" | undefined;
846
+ template?: string | undefined;
847
+ fallback?: string | undefined;
848
+ stripLeadingLabel?: "question" | "answer" | undefined;
849
+ replaceLineBreakTokens?: boolean | undefined;
850
+ removeEmDashes?: boolean | undefined;
851
+ normalizeWhitespace?: boolean | undefined;
852
+ maxLength?: number | undefined;
853
+ lengthUnit?: "code-units" | "code-points" | undefined;
854
+ wordBoundaryMinLength?: number | undefined;
855
+ ellipsis?: string | undefined;
856
+ bodyFallback?: {
857
+ stripLeadingLabel?: "conclusion" | undefined;
858
+ preferContaining?: string | undefined;
859
+ } | undefined;
764
860
  fallbackWithParent?: string | undefined;
765
861
  fallbackWithoutParent?: string | undefined;
766
862
  fallbackBySlug?: Record<string, string> | undefined;
767
863
  }, {
768
- source?: "content" | "fallback" | undefined;
864
+ source?: "template" | "content" | "fallback" | undefined;
865
+ template?: string | undefined;
769
866
  fallback?: string | undefined;
770
867
  stripLeadingLabel?: "question" | "answer" | undefined;
771
868
  replaceLineBreakTokens?: boolean | undefined;
772
869
  removeEmDashes?: boolean | undefined;
773
870
  normalizeWhitespace?: boolean | undefined;
774
871
  maxLength?: number | undefined;
872
+ lengthUnit?: "code-units" | "code-points" | undefined;
873
+ wordBoundaryMinLength?: number | undefined;
775
874
  ellipsis?: string | undefined;
875
+ bodyFallback?: {
876
+ stripLeadingLabel?: "conclusion" | undefined;
877
+ preferContaining?: string | undefined;
878
+ } | undefined;
776
879
  fallbackWithParent?: string | undefined;
777
880
  fallbackWithoutParent?: string | undefined;
778
881
  fallbackBySlug?: Record<string, string> | undefined;
779
882
  }>, {
780
- source?: "content" | "fallback" | undefined;
883
+ source?: "template" | "content" | "fallback" | undefined;
884
+ template?: string | undefined;
781
885
  fallback?: string | undefined;
782
886
  stripLeadingLabel?: "question" | "answer" | undefined;
783
887
  replaceLineBreakTokens?: boolean | undefined;
784
888
  removeEmDashes?: boolean | undefined;
785
889
  normalizeWhitespace?: boolean | undefined;
786
890
  maxLength?: number | undefined;
891
+ lengthUnit?: "code-units" | "code-points" | undefined;
892
+ wordBoundaryMinLength?: number | undefined;
787
893
  ellipsis?: string | undefined;
894
+ bodyFallback?: {
895
+ stripLeadingLabel?: "conclusion" | undefined;
896
+ preferContaining?: string | undefined;
897
+ } | undefined;
788
898
  fallbackWithParent?: string | undefined;
789
899
  fallbackWithoutParent?: string | undefined;
790
900
  fallbackBySlug?: Record<string, string> | undefined;
791
901
  }, {
792
- source?: "content" | "fallback" | undefined;
902
+ source?: "template" | "content" | "fallback" | undefined;
903
+ template?: string | undefined;
793
904
  fallback?: string | undefined;
794
905
  stripLeadingLabel?: "question" | "answer" | undefined;
795
906
  replaceLineBreakTokens?: boolean | undefined;
796
907
  removeEmDashes?: boolean | undefined;
797
908
  normalizeWhitespace?: boolean | undefined;
798
909
  maxLength?: number | undefined;
910
+ lengthUnit?: "code-units" | "code-points" | undefined;
911
+ wordBoundaryMinLength?: number | undefined;
799
912
  ellipsis?: string | undefined;
913
+ bodyFallback?: {
914
+ stripLeadingLabel?: "conclusion" | undefined;
915
+ preferContaining?: string | undefined;
916
+ } | undefined;
800
917
  fallbackWithParent?: string | undefined;
801
918
  fallbackWithoutParent?: string | undefined;
802
919
  fallbackBySlug?: Record<string, string> | undefined;
803
920
  }>;
804
921
  type MetadataTextRule = z.infer<typeof MetadataTextRuleSchema>;
922
+ interface MetadataTextInput {
923
+ title: string;
924
+ slug?: string;
925
+ parentId?: string | null;
926
+ /** Plain scalar text fields, matching public post.fields / stored metaJson.acf. */
927
+ fields?: Record<string, unknown> | null;
928
+ bodyParagraphs?: readonly string[] | null;
929
+ }
930
+ /** Walk only content nodes. Attributes, HTML, image alt and unrelated objects are not prose. */
931
+ declare function metadataBodyParagraphs(value: unknown): string[];
932
+
805
933
  declare const MetadataDefaultRulesSchema: z.ZodEffects<z.ZodObject<{
806
- title: z.ZodOptional<z.ZodEffects<z.ZodObject<{
807
- source: z.ZodOptional<z.ZodEnum<["content", "fallback"]>>;
934
+ title: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
935
+ source: z.ZodOptional<z.ZodEnum<["content", "fallback", "template"]>>;
936
+ template: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
808
937
  stripLeadingLabel: z.ZodOptional<z.ZodEnum<["question", "answer"]>>;
809
938
  replaceLineBreakTokens: z.ZodOptional<z.ZodBoolean>;
810
939
  removeEmDashes: z.ZodOptional<z.ZodBoolean>;
811
940
  normalizeWhitespace: z.ZodOptional<z.ZodBoolean>;
812
941
  maxLength: z.ZodOptional<z.ZodNumber>;
942
+ lengthUnit: z.ZodOptional<z.ZodEnum<["code-units", "code-points"]>>;
943
+ wordBoundaryMinLength: z.ZodOptional<z.ZodNumber>;
813
944
  ellipsis: z.ZodOptional<z.ZodString>;
945
+ bodyFallback: z.ZodOptional<z.ZodObject<{
946
+ preferContaining: z.ZodOptional<z.ZodString>;
947
+ stripLeadingLabel: z.ZodOptional<z.ZodLiteral<"conclusion">>;
948
+ }, "strict", z.ZodTypeAny, {
949
+ stripLeadingLabel?: "conclusion" | undefined;
950
+ preferContaining?: string | undefined;
951
+ }, {
952
+ stripLeadingLabel?: "conclusion" | undefined;
953
+ preferContaining?: string | undefined;
954
+ }>>;
814
955
  fallback: z.ZodOptional<z.ZodString>;
815
956
  fallbackWithParent: z.ZodOptional<z.ZodString>;
816
957
  fallbackWithoutParent: z.ZodOptional<z.ZodString>;
817
958
  fallbackBySlug: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
818
959
  }, "strict", z.ZodTypeAny, {
819
- source?: "content" | "fallback" | undefined;
960
+ source?: "template" | "content" | "fallback" | undefined;
961
+ template?: string | undefined;
962
+ fallback?: string | undefined;
963
+ stripLeadingLabel?: "question" | "answer" | undefined;
964
+ replaceLineBreakTokens?: boolean | undefined;
965
+ removeEmDashes?: boolean | undefined;
966
+ normalizeWhitespace?: boolean | undefined;
967
+ maxLength?: number | undefined;
968
+ lengthUnit?: "code-units" | "code-points" | undefined;
969
+ wordBoundaryMinLength?: number | undefined;
970
+ ellipsis?: string | undefined;
971
+ bodyFallback?: {
972
+ stripLeadingLabel?: "conclusion" | undefined;
973
+ preferContaining?: string | undefined;
974
+ } | undefined;
975
+ fallbackWithParent?: string | undefined;
976
+ fallbackWithoutParent?: string | undefined;
977
+ fallbackBySlug?: Record<string, string> | undefined;
978
+ }, {
979
+ source?: "template" | "content" | "fallback" | undefined;
980
+ template?: string | undefined;
981
+ fallback?: string | undefined;
982
+ stripLeadingLabel?: "question" | "answer" | undefined;
983
+ replaceLineBreakTokens?: boolean | undefined;
984
+ removeEmDashes?: boolean | undefined;
985
+ normalizeWhitespace?: boolean | undefined;
986
+ maxLength?: number | undefined;
987
+ lengthUnit?: "code-units" | "code-points" | undefined;
988
+ wordBoundaryMinLength?: number | undefined;
989
+ ellipsis?: string | undefined;
990
+ bodyFallback?: {
991
+ stripLeadingLabel?: "conclusion" | undefined;
992
+ preferContaining?: string | undefined;
993
+ } | undefined;
994
+ fallbackWithParent?: string | undefined;
995
+ fallbackWithoutParent?: string | undefined;
996
+ fallbackBySlug?: Record<string, string> | undefined;
997
+ }>, {
998
+ source?: "template" | "content" | "fallback" | undefined;
999
+ template?: string | undefined;
1000
+ fallback?: string | undefined;
1001
+ stripLeadingLabel?: "question" | "answer" | undefined;
1002
+ replaceLineBreakTokens?: boolean | undefined;
1003
+ removeEmDashes?: boolean | undefined;
1004
+ normalizeWhitespace?: boolean | undefined;
1005
+ maxLength?: number | undefined;
1006
+ lengthUnit?: "code-units" | "code-points" | undefined;
1007
+ wordBoundaryMinLength?: number | undefined;
1008
+ ellipsis?: string | undefined;
1009
+ bodyFallback?: {
1010
+ stripLeadingLabel?: "conclusion" | undefined;
1011
+ preferContaining?: string | undefined;
1012
+ } | undefined;
1013
+ fallbackWithParent?: string | undefined;
1014
+ fallbackWithoutParent?: string | undefined;
1015
+ fallbackBySlug?: Record<string, string> | undefined;
1016
+ }, {
1017
+ source?: "template" | "content" | "fallback" | undefined;
1018
+ template?: string | undefined;
1019
+ fallback?: string | undefined;
1020
+ stripLeadingLabel?: "question" | "answer" | undefined;
1021
+ replaceLineBreakTokens?: boolean | undefined;
1022
+ removeEmDashes?: boolean | undefined;
1023
+ normalizeWhitespace?: boolean | undefined;
1024
+ maxLength?: number | undefined;
1025
+ lengthUnit?: "code-units" | "code-points" | undefined;
1026
+ wordBoundaryMinLength?: number | undefined;
1027
+ ellipsis?: string | undefined;
1028
+ bodyFallback?: {
1029
+ stripLeadingLabel?: "conclusion" | undefined;
1030
+ preferContaining?: string | undefined;
1031
+ } | undefined;
1032
+ fallbackWithParent?: string | undefined;
1033
+ fallbackWithoutParent?: string | undefined;
1034
+ fallbackBySlug?: Record<string, string> | undefined;
1035
+ }>, {
1036
+ source?: "template" | "content" | "fallback" | undefined;
1037
+ template?: string | undefined;
820
1038
  fallback?: string | undefined;
821
1039
  stripLeadingLabel?: "question" | "answer" | undefined;
822
1040
  replaceLineBreakTokens?: boolean | undefined;
823
1041
  removeEmDashes?: boolean | undefined;
824
1042
  normalizeWhitespace?: boolean | undefined;
825
1043
  maxLength?: number | undefined;
1044
+ lengthUnit?: "code-units" | "code-points" | undefined;
1045
+ wordBoundaryMinLength?: number | undefined;
826
1046
  ellipsis?: string | undefined;
1047
+ bodyFallback?: {
1048
+ stripLeadingLabel?: "conclusion" | undefined;
1049
+ preferContaining?: string | undefined;
1050
+ } | undefined;
827
1051
  fallbackWithParent?: string | undefined;
828
1052
  fallbackWithoutParent?: string | undefined;
829
1053
  fallbackBySlug?: Record<string, string> | undefined;
830
1054
  }, {
831
- source?: "content" | "fallback" | undefined;
1055
+ source?: "template" | "content" | "fallback" | undefined;
1056
+ template?: string | undefined;
832
1057
  fallback?: string | undefined;
833
1058
  stripLeadingLabel?: "question" | "answer" | undefined;
834
1059
  replaceLineBreakTokens?: boolean | undefined;
835
1060
  removeEmDashes?: boolean | undefined;
836
1061
  normalizeWhitespace?: boolean | undefined;
837
1062
  maxLength?: number | undefined;
1063
+ lengthUnit?: "code-units" | "code-points" | undefined;
1064
+ wordBoundaryMinLength?: number | undefined;
838
1065
  ellipsis?: string | undefined;
1066
+ bodyFallback?: {
1067
+ stripLeadingLabel?: "conclusion" | undefined;
1068
+ preferContaining?: string | undefined;
1069
+ } | undefined;
839
1070
  fallbackWithParent?: string | undefined;
840
1071
  fallbackWithoutParent?: string | undefined;
841
1072
  fallbackBySlug?: Record<string, string> | undefined;
842
1073
  }>, {
843
- source?: "content" | "fallback" | undefined;
1074
+ source?: "template" | "content" | "fallback" | undefined;
1075
+ template?: string | undefined;
844
1076
  fallback?: string | undefined;
845
1077
  stripLeadingLabel?: "question" | "answer" | undefined;
846
1078
  replaceLineBreakTokens?: boolean | undefined;
847
1079
  removeEmDashes?: boolean | undefined;
848
1080
  normalizeWhitespace?: boolean | undefined;
849
1081
  maxLength?: number | undefined;
1082
+ lengthUnit?: "code-units" | "code-points" | undefined;
1083
+ wordBoundaryMinLength?: number | undefined;
850
1084
  ellipsis?: string | undefined;
1085
+ bodyFallback?: {
1086
+ stripLeadingLabel?: "conclusion" | undefined;
1087
+ preferContaining?: string | undefined;
1088
+ } | undefined;
851
1089
  fallbackWithParent?: string | undefined;
852
1090
  fallbackWithoutParent?: string | undefined;
853
1091
  fallbackBySlug?: Record<string, string> | undefined;
854
1092
  }, {
855
- source?: "content" | "fallback" | undefined;
1093
+ source?: "template" | "content" | "fallback" | undefined;
1094
+ template?: string | undefined;
856
1095
  fallback?: string | undefined;
857
1096
  stripLeadingLabel?: "question" | "answer" | undefined;
858
1097
  replaceLineBreakTokens?: boolean | undefined;
859
1098
  removeEmDashes?: boolean | undefined;
860
1099
  normalizeWhitespace?: boolean | undefined;
861
1100
  maxLength?: number | undefined;
1101
+ lengthUnit?: "code-units" | "code-points" | undefined;
1102
+ wordBoundaryMinLength?: number | undefined;
862
1103
  ellipsis?: string | undefined;
1104
+ bodyFallback?: {
1105
+ stripLeadingLabel?: "conclusion" | undefined;
1106
+ preferContaining?: string | undefined;
1107
+ } | undefined;
863
1108
  fallbackWithParent?: string | undefined;
864
1109
  fallbackWithoutParent?: string | undefined;
865
1110
  fallbackBySlug?: Record<string, string> | undefined;
866
1111
  }>>;
867
- description: z.ZodOptional<z.ZodEffects<z.ZodObject<{
868
- source: z.ZodOptional<z.ZodEnum<["content", "fallback"]>>;
1112
+ titleTemplateMaxLength: z.ZodOptional<z.ZodNumber>;
1113
+ description: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
1114
+ source: z.ZodOptional<z.ZodEnum<["content", "fallback", "template"]>>;
1115
+ template: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
869
1116
  stripLeadingLabel: z.ZodOptional<z.ZodEnum<["question", "answer"]>>;
870
1117
  replaceLineBreakTokens: z.ZodOptional<z.ZodBoolean>;
871
1118
  removeEmDashes: z.ZodOptional<z.ZodBoolean>;
872
1119
  normalizeWhitespace: z.ZodOptional<z.ZodBoolean>;
873
1120
  maxLength: z.ZodOptional<z.ZodNumber>;
1121
+ lengthUnit: z.ZodOptional<z.ZodEnum<["code-units", "code-points"]>>;
1122
+ wordBoundaryMinLength: z.ZodOptional<z.ZodNumber>;
874
1123
  ellipsis: z.ZodOptional<z.ZodString>;
1124
+ bodyFallback: z.ZodOptional<z.ZodObject<{
1125
+ preferContaining: z.ZodOptional<z.ZodString>;
1126
+ stripLeadingLabel: z.ZodOptional<z.ZodLiteral<"conclusion">>;
1127
+ }, "strict", z.ZodTypeAny, {
1128
+ stripLeadingLabel?: "conclusion" | undefined;
1129
+ preferContaining?: string | undefined;
1130
+ }, {
1131
+ stripLeadingLabel?: "conclusion" | undefined;
1132
+ preferContaining?: string | undefined;
1133
+ }>>;
875
1134
  fallback: z.ZodOptional<z.ZodString>;
876
1135
  fallbackWithParent: z.ZodOptional<z.ZodString>;
877
1136
  fallbackWithoutParent: z.ZodOptional<z.ZodString>;
878
1137
  fallbackBySlug: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
879
1138
  }, "strict", z.ZodTypeAny, {
880
- source?: "content" | "fallback" | undefined;
1139
+ source?: "template" | "content" | "fallback" | undefined;
1140
+ template?: string | undefined;
881
1141
  fallback?: string | undefined;
882
1142
  stripLeadingLabel?: "question" | "answer" | undefined;
883
1143
  replaceLineBreakTokens?: boolean | undefined;
884
1144
  removeEmDashes?: boolean | undefined;
885
1145
  normalizeWhitespace?: boolean | undefined;
886
1146
  maxLength?: number | undefined;
1147
+ lengthUnit?: "code-units" | "code-points" | undefined;
1148
+ wordBoundaryMinLength?: number | undefined;
887
1149
  ellipsis?: string | undefined;
1150
+ bodyFallback?: {
1151
+ stripLeadingLabel?: "conclusion" | undefined;
1152
+ preferContaining?: string | undefined;
1153
+ } | undefined;
888
1154
  fallbackWithParent?: string | undefined;
889
1155
  fallbackWithoutParent?: string | undefined;
890
1156
  fallbackBySlug?: Record<string, string> | undefined;
891
1157
  }, {
892
- source?: "content" | "fallback" | undefined;
1158
+ source?: "template" | "content" | "fallback" | undefined;
1159
+ template?: string | undefined;
893
1160
  fallback?: string | undefined;
894
1161
  stripLeadingLabel?: "question" | "answer" | undefined;
895
1162
  replaceLineBreakTokens?: boolean | undefined;
896
1163
  removeEmDashes?: boolean | undefined;
897
1164
  normalizeWhitespace?: boolean | undefined;
898
1165
  maxLength?: number | undefined;
1166
+ lengthUnit?: "code-units" | "code-points" | undefined;
1167
+ wordBoundaryMinLength?: number | undefined;
899
1168
  ellipsis?: string | undefined;
1169
+ bodyFallback?: {
1170
+ stripLeadingLabel?: "conclusion" | undefined;
1171
+ preferContaining?: string | undefined;
1172
+ } | undefined;
900
1173
  fallbackWithParent?: string | undefined;
901
1174
  fallbackWithoutParent?: string | undefined;
902
1175
  fallbackBySlug?: Record<string, string> | undefined;
903
1176
  }>, {
904
- source?: "content" | "fallback" | undefined;
1177
+ source?: "template" | "content" | "fallback" | undefined;
1178
+ template?: string | undefined;
905
1179
  fallback?: string | undefined;
906
1180
  stripLeadingLabel?: "question" | "answer" | undefined;
907
1181
  replaceLineBreakTokens?: boolean | undefined;
908
1182
  removeEmDashes?: boolean | undefined;
909
1183
  normalizeWhitespace?: boolean | undefined;
910
1184
  maxLength?: number | undefined;
1185
+ lengthUnit?: "code-units" | "code-points" | undefined;
1186
+ wordBoundaryMinLength?: number | undefined;
911
1187
  ellipsis?: string | undefined;
1188
+ bodyFallback?: {
1189
+ stripLeadingLabel?: "conclusion" | undefined;
1190
+ preferContaining?: string | undefined;
1191
+ } | undefined;
912
1192
  fallbackWithParent?: string | undefined;
913
1193
  fallbackWithoutParent?: string | undefined;
914
1194
  fallbackBySlug?: Record<string, string> | undefined;
915
1195
  }, {
916
- source?: "content" | "fallback" | undefined;
1196
+ source?: "template" | "content" | "fallback" | undefined;
1197
+ template?: string | undefined;
917
1198
  fallback?: string | undefined;
918
1199
  stripLeadingLabel?: "question" | "answer" | undefined;
919
1200
  replaceLineBreakTokens?: boolean | undefined;
920
1201
  removeEmDashes?: boolean | undefined;
921
1202
  normalizeWhitespace?: boolean | undefined;
922
1203
  maxLength?: number | undefined;
1204
+ lengthUnit?: "code-units" | "code-points" | undefined;
1205
+ wordBoundaryMinLength?: number | undefined;
923
1206
  ellipsis?: string | undefined;
1207
+ bodyFallback?: {
1208
+ stripLeadingLabel?: "conclusion" | undefined;
1209
+ preferContaining?: string | undefined;
1210
+ } | undefined;
1211
+ fallbackWithParent?: string | undefined;
1212
+ fallbackWithoutParent?: string | undefined;
1213
+ fallbackBySlug?: Record<string, string> | undefined;
1214
+ }>, {
1215
+ source?: "template" | "content" | "fallback" | undefined;
1216
+ template?: string | undefined;
1217
+ fallback?: string | undefined;
1218
+ stripLeadingLabel?: "question" | "answer" | undefined;
1219
+ replaceLineBreakTokens?: boolean | undefined;
1220
+ removeEmDashes?: boolean | undefined;
1221
+ normalizeWhitespace?: boolean | undefined;
1222
+ maxLength?: number | undefined;
1223
+ lengthUnit?: "code-units" | "code-points" | undefined;
1224
+ wordBoundaryMinLength?: number | undefined;
1225
+ ellipsis?: string | undefined;
1226
+ bodyFallback?: {
1227
+ stripLeadingLabel?: "conclusion" | undefined;
1228
+ preferContaining?: string | undefined;
1229
+ } | undefined;
1230
+ fallbackWithParent?: string | undefined;
1231
+ fallbackWithoutParent?: string | undefined;
1232
+ fallbackBySlug?: Record<string, string> | undefined;
1233
+ }, {
1234
+ source?: "template" | "content" | "fallback" | undefined;
1235
+ template?: string | undefined;
1236
+ fallback?: string | undefined;
1237
+ stripLeadingLabel?: "question" | "answer" | undefined;
1238
+ replaceLineBreakTokens?: boolean | undefined;
1239
+ removeEmDashes?: boolean | undefined;
1240
+ normalizeWhitespace?: boolean | undefined;
1241
+ maxLength?: number | undefined;
1242
+ lengthUnit?: "code-units" | "code-points" | undefined;
1243
+ wordBoundaryMinLength?: number | undefined;
1244
+ ellipsis?: string | undefined;
1245
+ bodyFallback?: {
1246
+ stripLeadingLabel?: "conclusion" | undefined;
1247
+ preferContaining?: string | undefined;
1248
+ } | undefined;
1249
+ fallbackWithParent?: string | undefined;
1250
+ fallbackWithoutParent?: string | undefined;
1251
+ fallbackBySlug?: Record<string, string> | undefined;
1252
+ }>, {
1253
+ source?: "template" | "content" | "fallback" | undefined;
1254
+ template?: string | undefined;
1255
+ fallback?: string | undefined;
1256
+ stripLeadingLabel?: "question" | "answer" | undefined;
1257
+ replaceLineBreakTokens?: boolean | undefined;
1258
+ removeEmDashes?: boolean | undefined;
1259
+ normalizeWhitespace?: boolean | undefined;
1260
+ maxLength?: number | undefined;
1261
+ lengthUnit?: "code-units" | "code-points" | undefined;
1262
+ wordBoundaryMinLength?: number | undefined;
1263
+ ellipsis?: string | undefined;
1264
+ bodyFallback?: {
1265
+ stripLeadingLabel?: "conclusion" | undefined;
1266
+ preferContaining?: string | undefined;
1267
+ } | undefined;
1268
+ fallbackWithParent?: string | undefined;
1269
+ fallbackWithoutParent?: string | undefined;
1270
+ fallbackBySlug?: Record<string, string> | undefined;
1271
+ }, {
1272
+ source?: "template" | "content" | "fallback" | undefined;
1273
+ template?: string | undefined;
1274
+ fallback?: string | undefined;
1275
+ stripLeadingLabel?: "question" | "answer" | undefined;
1276
+ replaceLineBreakTokens?: boolean | undefined;
1277
+ removeEmDashes?: boolean | undefined;
1278
+ normalizeWhitespace?: boolean | undefined;
1279
+ maxLength?: number | undefined;
1280
+ lengthUnit?: "code-units" | "code-points" | undefined;
1281
+ wordBoundaryMinLength?: number | undefined;
1282
+ ellipsis?: string | undefined;
1283
+ bodyFallback?: {
1284
+ stripLeadingLabel?: "conclusion" | undefined;
1285
+ preferContaining?: string | undefined;
1286
+ } | undefined;
924
1287
  fallbackWithParent?: string | undefined;
925
1288
  fallbackWithoutParent?: string | undefined;
926
1289
  fallbackBySlug?: Record<string, string> | undefined;
927
1290
  }>>;
1291
+ /** Code-owned defaults precede site defaults but always follow manual overrides. */
1292
+ defaults: z.ZodOptional<z.ZodObject<{
1293
+ title: z.ZodOptional<z.ZodString>;
1294
+ description: z.ZodOptional<z.ZodString>;
1295
+ ogImage: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
1296
+ ogImageAlt: z.ZodOptional<z.ZodString>;
1297
+ noindex: z.ZodOptional<z.ZodBoolean>;
1298
+ nofollow: z.ZodOptional<z.ZodBoolean>;
1299
+ }, "strict", z.ZodTypeAny, {
1300
+ title?: string | undefined;
1301
+ description?: string | undefined;
1302
+ ogImage?: string | undefined;
1303
+ ogImageAlt?: string | undefined;
1304
+ noindex?: boolean | undefined;
1305
+ nofollow?: boolean | undefined;
1306
+ }, {
1307
+ title?: string | undefined;
1308
+ description?: string | undefined;
1309
+ ogImage?: string | undefined;
1310
+ ogImageAlt?: string | undefined;
1311
+ noindex?: boolean | undefined;
1312
+ nofollow?: boolean | undefined;
1313
+ }>>;
1314
+ robots: z.ZodOptional<z.ZodObject<{
1315
+ forceNoindex: z.ZodOptional<z.ZodBoolean>;
1316
+ forceNofollow: z.ZodOptional<z.ZodBoolean>;
1317
+ }, "strict", z.ZodTypeAny, {
1318
+ forceNoindex?: boolean | undefined;
1319
+ forceNofollow?: boolean | undefined;
1320
+ }, {
1321
+ forceNoindex?: boolean | undefined;
1322
+ forceNofollow?: boolean | undefined;
1323
+ }>>;
1324
+ useFeaturedImage: z.ZodOptional<z.ZodBoolean>;
928
1325
  useFirstBodyImage: z.ZodOptional<z.ZodBoolean>;
929
1326
  useTermImage: z.ZodOptional<z.ZodBoolean>;
930
1327
  imageAltSource: z.ZodOptional<z.ZodEnum<["content", "title"]>>;
@@ -956,27 +1353,41 @@ declare const MetadataDefaultRulesSchema: z.ZodEffects<z.ZodObject<{
956
1353
  }>>;
957
1354
  }, "strict", z.ZodTypeAny, {
958
1355
  title?: {
959
- source?: "content" | "fallback" | undefined;
1356
+ source?: "template" | "content" | "fallback" | undefined;
1357
+ template?: string | undefined;
960
1358
  fallback?: string | undefined;
961
1359
  stripLeadingLabel?: "question" | "answer" | undefined;
962
1360
  replaceLineBreakTokens?: boolean | undefined;
963
1361
  removeEmDashes?: boolean | undefined;
964
1362
  normalizeWhitespace?: boolean | undefined;
965
1363
  maxLength?: number | undefined;
1364
+ lengthUnit?: "code-units" | "code-points" | undefined;
1365
+ wordBoundaryMinLength?: number | undefined;
966
1366
  ellipsis?: string | undefined;
1367
+ bodyFallback?: {
1368
+ stripLeadingLabel?: "conclusion" | undefined;
1369
+ preferContaining?: string | undefined;
1370
+ } | undefined;
967
1371
  fallbackWithParent?: string | undefined;
968
1372
  fallbackWithoutParent?: string | undefined;
969
1373
  fallbackBySlug?: Record<string, string> | undefined;
970
1374
  } | undefined;
971
1375
  description?: {
972
- source?: "content" | "fallback" | undefined;
1376
+ source?: "template" | "content" | "fallback" | undefined;
1377
+ template?: string | undefined;
973
1378
  fallback?: string | undefined;
974
1379
  stripLeadingLabel?: "question" | "answer" | undefined;
975
1380
  replaceLineBreakTokens?: boolean | undefined;
976
1381
  removeEmDashes?: boolean | undefined;
977
1382
  normalizeWhitespace?: boolean | undefined;
978
1383
  maxLength?: number | undefined;
1384
+ lengthUnit?: "code-units" | "code-points" | undefined;
1385
+ wordBoundaryMinLength?: number | undefined;
979
1386
  ellipsis?: string | undefined;
1387
+ bodyFallback?: {
1388
+ stripLeadingLabel?: "conclusion" | undefined;
1389
+ preferContaining?: string | undefined;
1390
+ } | undefined;
980
1391
  fallbackWithParent?: string | undefined;
981
1392
  fallbackWithoutParent?: string | undefined;
982
1393
  fallbackBySlug?: Record<string, string> | undefined;
@@ -989,6 +1400,20 @@ declare const MetadataDefaultRulesSchema: z.ZodEffects<z.ZodObject<{
989
1400
  noindex?: boolean | undefined;
990
1401
  nofollow?: boolean | undefined;
991
1402
  } | undefined;
1403
+ titleTemplateMaxLength?: number | undefined;
1404
+ defaults?: {
1405
+ title?: string | undefined;
1406
+ description?: string | undefined;
1407
+ ogImage?: string | undefined;
1408
+ ogImageAlt?: string | undefined;
1409
+ noindex?: boolean | undefined;
1410
+ nofollow?: boolean | undefined;
1411
+ } | undefined;
1412
+ robots?: {
1413
+ forceNoindex?: boolean | undefined;
1414
+ forceNofollow?: boolean | undefined;
1415
+ } | undefined;
1416
+ useFeaturedImage?: boolean | undefined;
992
1417
  useFirstBodyImage?: boolean | undefined;
993
1418
  useTermImage?: boolean | undefined;
994
1419
  imageAltSource?: "title" | "content" | undefined;
@@ -998,27 +1423,41 @@ declare const MetadataDefaultRulesSchema: z.ZodEffects<z.ZodObject<{
998
1423
  normalizeCloudflareImages?: boolean | undefined;
999
1424
  }, {
1000
1425
  title?: {
1001
- source?: "content" | "fallback" | undefined;
1426
+ source?: "template" | "content" | "fallback" | undefined;
1427
+ template?: string | undefined;
1002
1428
  fallback?: string | undefined;
1003
1429
  stripLeadingLabel?: "question" | "answer" | undefined;
1004
1430
  replaceLineBreakTokens?: boolean | undefined;
1005
1431
  removeEmDashes?: boolean | undefined;
1006
1432
  normalizeWhitespace?: boolean | undefined;
1007
1433
  maxLength?: number | undefined;
1434
+ lengthUnit?: "code-units" | "code-points" | undefined;
1435
+ wordBoundaryMinLength?: number | undefined;
1008
1436
  ellipsis?: string | undefined;
1437
+ bodyFallback?: {
1438
+ stripLeadingLabel?: "conclusion" | undefined;
1439
+ preferContaining?: string | undefined;
1440
+ } | undefined;
1009
1441
  fallbackWithParent?: string | undefined;
1010
1442
  fallbackWithoutParent?: string | undefined;
1011
1443
  fallbackBySlug?: Record<string, string> | undefined;
1012
1444
  } | undefined;
1013
1445
  description?: {
1014
- source?: "content" | "fallback" | undefined;
1446
+ source?: "template" | "content" | "fallback" | undefined;
1447
+ template?: string | undefined;
1015
1448
  fallback?: string | undefined;
1016
1449
  stripLeadingLabel?: "question" | "answer" | undefined;
1017
1450
  replaceLineBreakTokens?: boolean | undefined;
1018
1451
  removeEmDashes?: boolean | undefined;
1019
1452
  normalizeWhitespace?: boolean | undefined;
1020
1453
  maxLength?: number | undefined;
1454
+ lengthUnit?: "code-units" | "code-points" | undefined;
1455
+ wordBoundaryMinLength?: number | undefined;
1021
1456
  ellipsis?: string | undefined;
1457
+ bodyFallback?: {
1458
+ stripLeadingLabel?: "conclusion" | undefined;
1459
+ preferContaining?: string | undefined;
1460
+ } | undefined;
1022
1461
  fallbackWithParent?: string | undefined;
1023
1462
  fallbackWithoutParent?: string | undefined;
1024
1463
  fallbackBySlug?: Record<string, string> | undefined;
@@ -1031,6 +1470,20 @@ declare const MetadataDefaultRulesSchema: z.ZodEffects<z.ZodObject<{
1031
1470
  noindex?: boolean | undefined;
1032
1471
  nofollow?: boolean | undefined;
1033
1472
  } | undefined;
1473
+ titleTemplateMaxLength?: number | undefined;
1474
+ defaults?: {
1475
+ title?: string | undefined;
1476
+ description?: string | undefined;
1477
+ ogImage?: string | undefined;
1478
+ ogImageAlt?: string | undefined;
1479
+ noindex?: boolean | undefined;
1480
+ nofollow?: boolean | undefined;
1481
+ } | undefined;
1482
+ robots?: {
1483
+ forceNoindex?: boolean | undefined;
1484
+ forceNofollow?: boolean | undefined;
1485
+ } | undefined;
1486
+ useFeaturedImage?: boolean | undefined;
1034
1487
  useFirstBodyImage?: boolean | undefined;
1035
1488
  useTermImage?: boolean | undefined;
1036
1489
  imageAltSource?: "title" | "content" | undefined;
@@ -1040,27 +1493,41 @@ declare const MetadataDefaultRulesSchema: z.ZodEffects<z.ZodObject<{
1040
1493
  normalizeCloudflareImages?: boolean | undefined;
1041
1494
  }>, {
1042
1495
  title?: {
1043
- source?: "content" | "fallback" | undefined;
1496
+ source?: "template" | "content" | "fallback" | undefined;
1497
+ template?: string | undefined;
1044
1498
  fallback?: string | undefined;
1045
1499
  stripLeadingLabel?: "question" | "answer" | undefined;
1046
1500
  replaceLineBreakTokens?: boolean | undefined;
1047
1501
  removeEmDashes?: boolean | undefined;
1048
1502
  normalizeWhitespace?: boolean | undefined;
1049
1503
  maxLength?: number | undefined;
1504
+ lengthUnit?: "code-units" | "code-points" | undefined;
1505
+ wordBoundaryMinLength?: number | undefined;
1050
1506
  ellipsis?: string | undefined;
1507
+ bodyFallback?: {
1508
+ stripLeadingLabel?: "conclusion" | undefined;
1509
+ preferContaining?: string | undefined;
1510
+ } | undefined;
1051
1511
  fallbackWithParent?: string | undefined;
1052
1512
  fallbackWithoutParent?: string | undefined;
1053
1513
  fallbackBySlug?: Record<string, string> | undefined;
1054
1514
  } | undefined;
1055
1515
  description?: {
1056
- source?: "content" | "fallback" | undefined;
1516
+ source?: "template" | "content" | "fallback" | undefined;
1517
+ template?: string | undefined;
1057
1518
  fallback?: string | undefined;
1058
1519
  stripLeadingLabel?: "question" | "answer" | undefined;
1059
1520
  replaceLineBreakTokens?: boolean | undefined;
1060
1521
  removeEmDashes?: boolean | undefined;
1061
1522
  normalizeWhitespace?: boolean | undefined;
1062
1523
  maxLength?: number | undefined;
1524
+ lengthUnit?: "code-units" | "code-points" | undefined;
1525
+ wordBoundaryMinLength?: number | undefined;
1063
1526
  ellipsis?: string | undefined;
1527
+ bodyFallback?: {
1528
+ stripLeadingLabel?: "conclusion" | undefined;
1529
+ preferContaining?: string | undefined;
1530
+ } | undefined;
1064
1531
  fallbackWithParent?: string | undefined;
1065
1532
  fallbackWithoutParent?: string | undefined;
1066
1533
  fallbackBySlug?: Record<string, string> | undefined;
@@ -1073,6 +1540,20 @@ declare const MetadataDefaultRulesSchema: z.ZodEffects<z.ZodObject<{
1073
1540
  noindex?: boolean | undefined;
1074
1541
  nofollow?: boolean | undefined;
1075
1542
  } | undefined;
1543
+ titleTemplateMaxLength?: number | undefined;
1544
+ defaults?: {
1545
+ title?: string | undefined;
1546
+ description?: string | undefined;
1547
+ ogImage?: string | undefined;
1548
+ ogImageAlt?: string | undefined;
1549
+ noindex?: boolean | undefined;
1550
+ nofollow?: boolean | undefined;
1551
+ } | undefined;
1552
+ robots?: {
1553
+ forceNoindex?: boolean | undefined;
1554
+ forceNofollow?: boolean | undefined;
1555
+ } | undefined;
1556
+ useFeaturedImage?: boolean | undefined;
1076
1557
  useFirstBodyImage?: boolean | undefined;
1077
1558
  useTermImage?: boolean | undefined;
1078
1559
  imageAltSource?: "title" | "content" | undefined;
@@ -1082,27 +1563,41 @@ declare const MetadataDefaultRulesSchema: z.ZodEffects<z.ZodObject<{
1082
1563
  normalizeCloudflareImages?: boolean | undefined;
1083
1564
  }, {
1084
1565
  title?: {
1085
- source?: "content" | "fallback" | undefined;
1566
+ source?: "template" | "content" | "fallback" | undefined;
1567
+ template?: string | undefined;
1086
1568
  fallback?: string | undefined;
1087
1569
  stripLeadingLabel?: "question" | "answer" | undefined;
1088
1570
  replaceLineBreakTokens?: boolean | undefined;
1089
1571
  removeEmDashes?: boolean | undefined;
1090
1572
  normalizeWhitespace?: boolean | undefined;
1091
1573
  maxLength?: number | undefined;
1574
+ lengthUnit?: "code-units" | "code-points" | undefined;
1575
+ wordBoundaryMinLength?: number | undefined;
1092
1576
  ellipsis?: string | undefined;
1577
+ bodyFallback?: {
1578
+ stripLeadingLabel?: "conclusion" | undefined;
1579
+ preferContaining?: string | undefined;
1580
+ } | undefined;
1093
1581
  fallbackWithParent?: string | undefined;
1094
1582
  fallbackWithoutParent?: string | undefined;
1095
1583
  fallbackBySlug?: Record<string, string> | undefined;
1096
1584
  } | undefined;
1097
1585
  description?: {
1098
- source?: "content" | "fallback" | undefined;
1586
+ source?: "template" | "content" | "fallback" | undefined;
1587
+ template?: string | undefined;
1099
1588
  fallback?: string | undefined;
1100
1589
  stripLeadingLabel?: "question" | "answer" | undefined;
1101
1590
  replaceLineBreakTokens?: boolean | undefined;
1102
1591
  removeEmDashes?: boolean | undefined;
1103
1592
  normalizeWhitespace?: boolean | undefined;
1104
1593
  maxLength?: number | undefined;
1594
+ lengthUnit?: "code-units" | "code-points" | undefined;
1595
+ wordBoundaryMinLength?: number | undefined;
1105
1596
  ellipsis?: string | undefined;
1597
+ bodyFallback?: {
1598
+ stripLeadingLabel?: "conclusion" | undefined;
1599
+ preferContaining?: string | undefined;
1600
+ } | undefined;
1106
1601
  fallbackWithParent?: string | undefined;
1107
1602
  fallbackWithoutParent?: string | undefined;
1108
1603
  fallbackBySlug?: Record<string, string> | undefined;
@@ -1115,6 +1610,20 @@ declare const MetadataDefaultRulesSchema: z.ZodEffects<z.ZodObject<{
1115
1610
  noindex?: boolean | undefined;
1116
1611
  nofollow?: boolean | undefined;
1117
1612
  } | undefined;
1613
+ titleTemplateMaxLength?: number | undefined;
1614
+ defaults?: {
1615
+ title?: string | undefined;
1616
+ description?: string | undefined;
1617
+ ogImage?: string | undefined;
1618
+ ogImageAlt?: string | undefined;
1619
+ noindex?: boolean | undefined;
1620
+ nofollow?: boolean | undefined;
1621
+ } | undefined;
1622
+ robots?: {
1623
+ forceNoindex?: boolean | undefined;
1624
+ forceNofollow?: boolean | undefined;
1625
+ } | undefined;
1626
+ useFeaturedImage?: boolean | undefined;
1118
1627
  useFirstBodyImage?: boolean | undefined;
1119
1628
  useTermImage?: boolean | undefined;
1120
1629
  imageAltSource?: "title" | "content" | undefined;
@@ -1136,13 +1645,10 @@ interface MetadataDefaultsDeclaration {
1136
1645
  defaultRules?: Record<string, MetadataDefaultRules>;
1137
1646
  };
1138
1647
  }
1139
- interface MetadataDefaultsInput {
1648
+ interface MetadataDefaultsInput extends MetadataTextInput {
1140
1649
  kind: "posts" | "terms";
1141
1650
  modelKey: string;
1142
- title: string;
1143
1651
  description?: string | null;
1144
- slug?: string;
1145
- parentId?: string | null;
1146
1652
  featuredImage?: string | null;
1147
1653
  firstBodyImage?: string | null;
1148
1654
  legacyImage?: string | null;
@@ -1176,4 +1682,4 @@ declare function isProtectedRedirectPath(path: string): boolean;
1176
1682
  declare function normalizeRedirectSource(raw: string): NormalizedRedirectSourceResult;
1177
1683
  declare function normalizeRedirectTarget(raw: string): NormalizedRedirectTargetResult;
1178
1684
 
1179
- export { BLOCK_NAME_PATTERN, type BindingResolver, type Block, type BlockBinding, type BlockDefinition, type BlockRegistry, CMS_FONT_SIZES, CMS_IMAGE_WIDTHS, CMS_LINE_HEIGHTS, CMS_PARAGRAPH_SPACINGS, type CategoryTreeEntry, type CategoryTreeEntryCategory, type CategoryTreePresentation, type CategoryTreeTerm, type ClientHydrationSpec, DEFAULT_SITE_PATTERN_PRESENTATION, EMPTY_SITE_PATTERN_PLACEMENTS, type EmbedProvider, FIELD_BINDING_SOURCE, FIELD_BINDING_SOURCE_ALIAS, type FaqEntry, IMAGE_ALT_MAX_LENGTH, INTERNAL_CONTENT_LINK_CLASS, INTERNAL_CONTENT_LINK_PENDING_ATTR, INTERNAL_CONTENT_LINK_PENDING_CLASS, INTERNAL_CONTENT_LINK_TOKEN_SOURCE, type InternalContentLinkResolver, type InternalContentLinkToken, LEGACY_BLOG_DETAIL_PATH, METADATA_FIELDS, type MetadataDefaultRules, MetadataDefaultRulesSchema, type MetadataDefaultsDeclaration, type MetadataDefaultsInput, type MetadataField, MetadataFieldSchema, type MetadataPatch, MetadataPatchSchema, type MetadataResolutionInput, type MetadataRobotsPolicy, MetadataRobotsPolicySchema, type MetadataTarget, type MetadataTargetKind, MetadataTargetKindSchema, type MetadataTextRule, MetadataTextRuleSchema, type MetadataValues, MetadataValuesSchema, type NormalizedEmbed, type NormalizedRedirectSourceResult, type NormalizedRedirectTargetResult, PHASE_1_CORE_BLOCKS, PHASE_1_CSP, POST_FOOTER_SLOT, type PatternSlots, type Phase1CoreBlockName, type PreviewTokenPayload, type PublicPathContext, type PublicPathPost, type PublicPathPresentation, type PublicRouteMetadata, type RoutablePost, type RouteCollection, SITE_PATTERN_BUTTON_COLORS_MAX, SITE_PATTERN_KEY_PATTERN, SITE_PATTERN_PLACEMENTS_KEY, SITE_PATTERN_SLOTS, type SectionLock, type SectionLockViolation, type SectionLockViolationCode, type SitePatternLayout, type SitePatternLinkStyle, type SitePatternPlacementRule, type SitePatternPlacements, type SitePatternPresentation, type SitePatternSlotKey, applyBlockBindings, bindingSrcValue, bindingTextValue, blockSchema, boundFieldValue, chainResolvers, cmsFontSize, cmsImageAlign, cmsImageStyle, cmsImageWidth, cmsLineHeight, cmsParagraphSpacing, createFieldBindingResolver, emptyPatternSlots, ensureImportedHtmlDocumentRoots, ensureStableIds, extractFaqEntries, faqPageJsonLd, findInternalContentLinkTokens, findSectionLockViolations, findSitePatternPlacementRule, formatMetadataDefaults, formatSectionLockViolations, htmlToPlainText, injectStableIdsTree, internalContentKeyFromPath, internalContentLinkResolverFrom, internalContentPathIndex, isAllowedEmbedSrc, isAllowedMapEmbedSrc, isInCollectionMode, isProtectedRedirectPath, isSectionContentPropPath, isSitePatternSlotKey, isValidBlock, isValidSitePatternKey, issuePreviewToken, mergeMetadataPatch, metadataContentImageUrl, normalizeEmbed, normalizeHexColor, normalizeImageAlt, normalizeRedirectPath, normalizeRedirectSource, normalizeRedirectTarget, parseBlock, postsForCollection, postsInAnyCollection, postsNotInAnyCollection, readMetadataValues, readSitePatternPlacements, readSitePatternPresentation, referencedSitePatternKeys, renderInternalContentLinksInHtml, renderInternalContentLinksInText, resolveCategoryPath, resolveCategoryTreeChain, resolveCategoryTreeEntryPath, resolveCategoryTreeHubPaths, resolveCategoryTreeSelection, resolveMetadata, resolvePatternSlots, resolvePostCategorySlug, resolvePostCollection, resolvePostPath, resolvePostPublicPath, resolvePostUrl, sanitizeHtml, sanitizeImportedCss, sanitizeImportedHtml, scopeImportedCss, serializeBlock, setSitePatternPlacementRule, sitePatternButtonColor, sitePatternPresentationAttributes, validateCollections, verifyPreviewToken };
1685
+ export { BLOCK_NAME_PATTERN, type BindingResolver, type Block, type BlockBinding, type BlockDefinition, type BlockRegistry, CMS_FONT_SIZES, CMS_IMAGE_WIDTHS, CMS_LINE_HEIGHTS, CMS_PARAGRAPH_SPACINGS, type CategoryTreeEntry, type CategoryTreeEntryCategory, type CategoryTreePresentation, type CategoryTreeTerm, type ClientHydrationSpec, DEFAULT_SITE_PATTERN_PRESENTATION, EMPTY_SITE_PATTERN_PLACEMENTS, type EmbedProvider, FIELD_BINDING_SOURCE, FIELD_BINDING_SOURCE_ALIAS, type FaqEntry, IMAGE_ALT_MAX_LENGTH, INTERNAL_CONTENT_LINK_CLASS, INTERNAL_CONTENT_LINK_PENDING_ATTR, INTERNAL_CONTENT_LINK_PENDING_CLASS, INTERNAL_CONTENT_LINK_TOKEN_SOURCE, type InternalContentLinkResolver, type InternalContentLinkToken, LEGACY_BLOG_DETAIL_PATH, METADATA_FIELDS, type MetadataDefaultRules, MetadataDefaultRulesSchema, type MetadataDefaultsDeclaration, type MetadataDefaultsInput, type MetadataField, MetadataFieldSchema, type MetadataPatch, MetadataPatchSchema, type MetadataResolutionInput, type MetadataRobotsPolicy, MetadataRobotsPolicySchema, type MetadataTarget, type MetadataTargetKind, MetadataTargetKindSchema, type MetadataTextRule, MetadataTextRuleSchema, type MetadataValues, MetadataValuesSchema, type NormalizedEmbed, type NormalizedRedirectSourceResult, type NormalizedRedirectTargetResult, PHASE_1_CORE_BLOCKS, PHASE_1_CSP, POST_FOOTER_SLOT, type PatternSlots, type Phase1CoreBlockName, type PreviewTokenPayload, type PublicPathContext, type PublicPathPost, type PublicPathPresentation, type PublicRouteMetadata, type RoutablePost, type RouteCollection, SITE_PATTERN_BUTTON_COLORS_MAX, SITE_PATTERN_KEY_PATTERN, SITE_PATTERN_PLACEMENTS_KEY, SITE_PATTERN_SLOTS, type SectionLock, type SectionLockViolation, type SectionLockViolationCode, type SitePatternLayout, type SitePatternLinkStyle, type SitePatternPlacementRule, type SitePatternPlacements, type SitePatternPresentation, type SitePatternSlotKey, applyBlockBindings, bindingSrcValue, bindingTextValue, blockSchema, boundFieldValue, chainResolvers, cmsFontSize, cmsImageAlign, cmsImageStyle, cmsImageWidth, cmsLineHeight, cmsParagraphSpacing, createFieldBindingResolver, emptyPatternSlots, ensureImportedHtmlDocumentRoots, ensureStableIds, extractFaqEntries, faqPageJsonLd, findInternalContentLinkTokens, findSectionLockViolations, findSitePatternPlacementRule, formatMetadataDefaults, formatSectionLockViolations, htmlToPlainText, injectStableIdsTree, internalContentKeyFromPath, internalContentLinkResolverFrom, internalContentPathIndex, isAllowedEmbedSrc, isAllowedMapEmbedSrc, isInCollectionMode, isProtectedRedirectPath, isSectionContentPropPath, isSitePatternSlotKey, isValidBlock, isValidSitePatternKey, issuePreviewToken, mergeMetadataPatch, metadataBodyParagraphs, metadataContentImageUrl, normalizeEmbed, normalizeHexColor, normalizeImageAlt, normalizeRedirectPath, normalizeRedirectSource, normalizeRedirectTarget, parseBlock, postsForCollection, postsInAnyCollection, postsNotInAnyCollection, readMetadataValues, readSitePatternPlacements, readSitePatternPresentation, referencedSitePatternKeys, renderInternalContentLinksInHtml, renderInternalContentLinksInText, resolveCategoryPath, resolveCategoryTreeChain, resolveCategoryTreeEntryPath, resolveCategoryTreeHubPaths, resolveCategoryTreeSelection, resolveMetadata, resolvePatternSlots, resolvePostCategorySlug, resolvePostCollection, resolvePostPath, resolvePostPublicPath, resolvePostUrl, sanitizeHtml, sanitizeImportedCss, sanitizeImportedHtml, scopeImportedCss, serializeBlock, setSitePatternPlacementRule, sitePatternButtonColor, sitePatternPresentationAttributes, validateCollections, verifyPreviewToken };