import { FieldSchema } from '@ephox/boulder';
import { Fun } from '@ephox/katamari';
import * as Behaviour from '../../api/behaviour/Behaviour';
import { Replacing } from '../../api/behaviour/Replacing';
import { SketchBehaviours } from '../../api/component/SketchBehaviours';
import * as PartType from '../../parts/PartType';
const schema = Fun.constant([
    FieldSchema.defaulted('shell', false),
    FieldSchema.required('makeItem'),
    FieldSchema.defaulted('setupItem', Fun.noop),
    SketchBehaviours.field('listBehaviours', [Replacing])
]);
const customListDetail = () => ({
    behaviours: Behaviour.derive([
        Replacing.config({})
    ])
});
const itemsPart = PartType.optional({
    name: 'items',
    overrides: customListDetail
});
const parts = Fun.constant([
    itemsPart
]);
const name = Fun.constant('CustomList');
export { name, schema, parts };
//# sourceMappingURL=CustomListSchema.js.map