1{ config, lib, ... }:
2let
3 inherit (lib) types mkOption setDefaultModuleLocation evalModules;
4 inherit (types) deferredModule lazyAttrsOf submodule str raw enum;
5in
6{
7 options = {
8 deferred = mkOption {
9 type = deferredModule;
10 };
11 result = mkOption {
12 default = (evalModules { modules = [ config.deferred ]; }).config.result;
13 };
14 };
15 config = {
16 deferred = { ... }:
17 # this should be an attrset, so this fails
18 true;
19 };
20}