Currently, cuetsy prints its outputs in alphabetical order. TS is sensitive to ordering in its constant declarations, however, meaning that this:
interface Bar {
N: number;
}
const defaultBar: Bar = {
N: defaultFoo,
}
type Foo = number;
const defaultFoo: Foo = 4;
Is invalid because defaultFoo is declared after it is referenced in defaultBar. Consequently, we have to add a (stable) toposort to cuetsy such that its const outputs are in an acceptable order.
It'll also mean erroring on circular references, if any.
Currently, cuetsy prints its outputs in alphabetical order. TS is sensitive to ordering in its constant declarations, however, meaning that this:
Is invalid because
defaultFoo
is declared after it is referenced indefaultBar
. Consequently, we have to add a (stable) toposort to cuetsy such that its const outputs are in an acceptable order.It'll also mean erroring on circular references, if any.