CustomEditor: {
    component: any;
    displayName: string;
    getIsDirty?: (() => boolean | Promise<boolean>);
    hiddenPreview?: boolean;
    name: string;
    when: ((ctx: CustomEditorCtx) => boolean | Promise<boolean>);
}