Extends
Type Parameters
Type Parameter Default type T
extends object
- E
extends Record
<string
, any
>Record
<string
, never
>State
extends string
never
Properties
Property Modifier Type Description Overrides Inherited from diagnostics
readonly
DiagnosticMap
<T
>Map of potential diagnostics that can be emitted in this library where the key is the diagnostic code. - TypeSpecLibraryDef
.diagnostics
emitter?
readonly
object
Emitter configuration if library is an emitter. - TypeSpecLibraryDef
.emitter
emitter.options?
public
JSONSchemaType
<E
>- - - linter?
readonly
LinterDefinition
Configuration if library is providing linting rules/rulesets. Deprecated Use export const $linter
instead. This will cause circular reference with linters. - TypeSpecLibraryDef
.linter
name
readonly
string
Library name TypeSpecLibraryDef
.name
- requireImports?
readonly
readonly string
[] List of other library that should be imported when this is used as an emitter. Compiler will emit an error if the libraries are not explicitly imported. - TypeSpecLibraryDef
.requireImports
state?
readonly
Record
<State
, StateDef
>- - TypeSpecLibraryDef
.state
stateKeys
readonly
Record
<State
, symbol
>- - -
Methods
createDiagnostic()
createDiagnostic < C , M >(diag): Diagnostic
Type Parameters
Type Parameter C
extends string
| number
| symbol
M
extends string
| number
| symbol
Parameters
Returns
Diagnostic
createStateSymbol()
createStateSymbol (name): symbol
Get or create a symbol with the given name unique for that library.
Parameters
Parameter Type Description name
string
Symbol name scoped with the library name.
Returns
symbol
getTracer()
getTracer (program): Tracer
Returns a tracer scopped to the current library.
All trace area logged via this tracer will be prefixed with the library name.
Parameters
Returns
Tracer
reportDiagnostic()
reportDiagnostic < C , M >(program, diag): void
Type Parameters
Type Parameter C
extends string
| number
| symbol
M
extends string
| number
| symbol
Parameters
Returns
void