Map<String, dynamic> toJson(Table table) => { 'name': name, 'columns': columns.map((c) => c.toJson(table)).toList(growable: false) };