API reference / Common / Engine types / ContentControlKind
Type Alias: ContentControlKind
type ContentControlKind =
| "richText"
| {
plainText: {
multiLine: boolean;
};
}
| "picture"
| {
comboBox: ContentControlList;
}
| {
dropDownList: ContentControlList;
}
| {
date: ContentControlDate;
}
| {
buildingBlock: ContentControlDocPart;
}
| {
buildingBlockList: ContentControlDocPart;
}
| "equation"
| "citation"
| "bibliography"
| "group"
| {
checkBox: ContentControlCheckBox;
}
| {
repeatingSection: ContentControlRepeatingSection;
}
| "repeatingSectionItem";The type element in w:sdtPr, and the per-type state that rides with it.
The schema spells twelve of these as an <xsd:choice minOccurs="0">, so a control is at most one of them — and a sdtPr with no type element at all behaves as RichText, which is why that is the default rather than the enum being optional.
CheckBox, RepeatingSection and RepeatingSectionItem are not in that choice: they are w14 / w15 extension elements that ride alongside it, outside the schema only because they postdate it. They are types in every sense the editor and the compose care about, so they are variants here, and the format edge writes each back in its own namespace — the same one-kind, per-format-spelling rule TextSimpleFieldKind follows.
This shares nothing with TextFormFieldKind. A w:ffData checkbox and a w14:checkbox are two unrelated systems that happen to paint the same glyph.