0xDEADBEEF
Publisher: Prelly95Themes in package: 1
dark colour theme designed to work well with C/++ Rust and Python
dark colour theme designed to work well with C/++ Rust and Python
Full workbench mockup using this variant's colors and tokenColors.
Loading...
Workbench UI color keys from the theme JSON colors map.
TextMate scopes and font styles (syntax highlighting rules).
| scope | foreground | fontStyle |
|---|---|---|
| #FFFF00 | — | |
| keyword.other.rust | #76f33d | — |
| meta.function-call.c, meta.function.call.rust entity.name.function.rust | #569CD6 | — |
| comment, constant.language.underscore.idris, punctuation.definition.comment, punctuation.whitespace.comment.leading.haskell, source.fsharp markup.inline.raw.string.markdown, source.fsharp meta.paragraph.markdown, source.fsharp punctuation.definition.raw.markdown, source.ocaml meta.separator.markdown, source.python string.quoted.docstring.multi punctuation.definition.string.begin, source.python string.quoted.docstring.multi punctuation.definition.string.end, string.quoted.docstring | #7E818B | italic |
| constant.other.table-name.sql, constant.type-constructor.elm, entity.name.constant.racket, entity.name.function.asciidoc, entity.name.function.gleam, entity.name.function.lua, entity.name.function.preprocessor.c, entity.name.function.target.makefile, entity.name.tag.yaml, entity.name.type.class.kotlin, entity.name.type.declaration.rust, entity.name.type.enum.rust, entity.name.type.instance, entity.name.type.macro.rust, entity.name.type.trait.rust, entity.other.inherited-class.kotlin, keyword.control.at-rule, keyword.key.toml, markup.admonition.asciidoc, markup.heading.blocktitle.asciidoc, markup.table.cell.delimiter.asciidoc, meta.declaration.data.algebraic.haskell storage.type.haskell, meta.declaration.newtype.algebraic.haskell storage.type.haskell, meta.definition.property.js entity.name.function.js, meta.definition.property.js variable.object.property.js, meta.definition.property.js.jsx entity.name.function.js.jsx, meta.definition.property.js.jsx variable.object.property.js.jsx, meta.definition.property.ts entity.name.function.ts, meta.definition.property.ts variable.object.property.ts, meta.definition.property.tsx entity.name.function.tsx, meta.definition.property.tsx variable.object.property.tsx, meta.expression.parenthesized variable.other.erlang, meta.function-call.arguments.python, meta.function-call.cpp, meta.function-call.erlang variable.other.erlang, meta.function-call.php variable.other.php, meta.generic-where-clause.swift, meta.object.flowtype storage.type.function.js, meta.object.flowtype variable.other.readwrite.js, parameter.variable.function.elixir, source.cpp entity.name.scope-resolution, source.css.scss meta.property-list entity.name.tag, source.haskell meta.declaration storage.type, source.ocaml entity.name.class constant.numeric, source.reason entity.name.class, source.ts support.class, storage.modifier.scope.viml, storage.type.powershell, string.other.link.title.restructuredtext, support.class.console.js, support.class.console.jsx, support.class.console.ts, support.class.console.tsx, support.class.crystal, support.class.dart, support.class.ruby, support.constant.attribute.viml, support.function.attribute.fsharp, support.function.builtin.go, support.function.lua, support.function.r, support.other.module.idris, support.type.object, support.type.property-name.css, support.type.property-name.media.css, support.type.swift, support.type.vendored.property-name.css, support.variable.option.viml, text.html.derivative variable.language, variable.function.r, variable.graphql, variable.other.anonymous.elixir, variable.other.constant.object, variable.other.object, variable.other.positional.shell, variable.other.readwrite, variable.other.special.shell | #99C2EB | — |
| constant.language, constant.numeric, constant.other.caps.rust, constant.other.fsharp, entity.name.function.macro.erlang, markup.changed.git_gutter, markup.deleted.git_gutter, markup.fenced_code.block.markdown, markup.inline.raw.string.markdown, markup.raw.block.fenced.markdown, markup.raw.block, markup.raw.inner.restructuredtext, markup.raw.restructuredtext, meta.function.embedded.latex, support.variable.magic.python, text.asciidoc markup.raw, text.html.markdown markup.inline.raw.markdown, variable.language.elixir, variable.language.ruby | #F14360 | — |
| constant.other.citation.link.restructuredtext, constant.other.database-name.sql, entity.name.class, entity.name.function.c, entity.name.function.clojure, entity.name.function.cs, entity.name.function.ctor.idris, entity.name.function.dart, entity.name.function.guard.erlang, entity.name.function.viml, entity.name.section, entity.name.type.fsharp, entity.other.attribute-name.html, entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name, entity.other.inherited-class.haskell, entity.other.inherited-class.placeholder-selector.css.sass, keyword.control.preamble.latex, keyword.other.preprocessor.haskell, markup.list meta.paragraph.markdown, markup.list.numbered meta.paragraph.markdown, meta.attribute.rust, meta.declaration.data.algebraic.haskell meta.deriving.haskell storage.type.haskell, meta.declaration.exports.haskell entity.name.function.haskell, meta.declaration.newtype.algebraic.haskell meta.deriving.haskell storage.type.haskell, meta.function-call entity.name.function, meta.function-call.crystal entity.name.function.crystal, meta.function-call.erlang entity.name.function.erlang, meta.function-call.generic.python, meta.function-call.python, meta.function-call, meta.import.haskell entity.name.namespace.haskell, meta.method-call entity.name.function, meta.object-literal.key.js entity.name.function.js, meta.object-literal.key.js, meta.object-literal.key.jsx entity.name.function.jsx, meta.object-literal.key.jsx, meta.object-literal.key.ts entity.name.function.ts, meta.object-literal.key.ts, meta.object-literal.key.tsx entity.name.function.tsx, meta.object-literal.key.tsx, source.elm meta.module.name support.module, source.haskell constant, source.java storage.type, source.js constant.other.object.key.js string.unquoted.js, source.js meta.function-call.without-arguments entity.name.function, source.reason constant.language, source.scheme support.function, source.viml support.function, storage.type.annotation.kotlin, string.other.link.description.title.markdown, support.class.kotlin, support.constant.misc.r, support.function.any-method.swift, support.function.console.js, support.function.go, support.function.mutator.js, support.function.powershell, support.function.racket, support.function.swift, support.function.target.PHONY.makefile, support.type.builtin.graphql, support.variable.swift, text.restructuredtext constant.other.footnote.link, variable.language, variable.other.constant.elixir, variable.other.object.access.cpp, variable.other.swift | #ABB8C0 | — |
| constant.other.general.math.tex, entity.name.class.js, entity.name.class.kotlin, entity.name.function.macro.rust, entity.name.function.preprocessor.cpp, entity.name.module.rust, entity.name.package.go, entity.name.role.restructuredtext, entity.name.section.fsharp, entity.name.type.class, entity.name.type.interface.ts, entity.name.type.interface.tsx, entity.name.type.lifetime.rust, entity.name.type.module, entity.other.inherited-class, meta.declaration.module.idris, meta.object-literal.key, meta.property-name, source.css.scss keyword.control.at-rule, source.elm meta.declaration.module support.module, source.elm meta.import support.module, source.graphql meta.type.interface support.type, source.haskell entity.name.namespace, source.ocaml entity.name.filename, source.python meta.function-call, source.sass keyword.control.at-rule, source.swift meta.definition.type.extension.swift entity.name.type.swift support.type.swift, storage.modifier.attribute.swift, storage.type.annotation.java, support.class.builtin.js, support.class, support.constant.variable.powershell, support.function.construct.php, support.type.property-name, support.variable.viml, variable.other.class.js, variable.other.readwrite.class.crystal, variable.other.readwrite.decorator.js, variable.other.readwrite.instance.crystal, variable.other.readwrite.instance.ruby, variable.other.readwrite.module.elixir | #FF89B5 | — |
| constant, entity.name.function.call.cpp, entity.name.function.java, entity.name.function.member.cpp, entity.name.record.field.accessor.elm, entity.name.type.class.module.erlang, entity.other.attribute-name.pseudo-element.css, JSXNested, keyword.control.unit.css.sass, keyword.other.platform.os.swift, keyword.other.unit, meta.declaration.exports.haskell entity.name.function.haskell, meta.function-call.erlang variable.other.erlang, meta.function-call.swift, meta.function.js support, meta.method-call.with-arguments.js support.type, meta.type.object.graphql support.type.graphql, meta, source.elixir.embedded, source.idris meta.parameter variable.parameter, source.powershell interpolated.simple.source meta.scriptblock meta.hashtable meta.hashtable.assignment variable.other.readwrite.powershell, source.reason constant.language constant.numeric, source.reason support.type string.regexp, source.yaml string.unquoted, storage.modifier.import.java, storage.modifier.swift, storage.type.cs, string.interpolated.dollar.shell, support.class.stdplugin.viml, support.constant.ext.php, variable.language.prototype.js, variable.other.block.crystal, variable.other.block.ruby, variable.other.bracket.shell, variable.other.constant, variable.other.crystal, variable.other.erlang, variable.other.lua, variable.other.member.definition.haskell, variable.other.member.powershell, variable.other.metavariable.name.rust, variable.other.object.property.cs, variable.other.object.property.ts, variable.other.php, variable.other.property.cpp, variable.other.property.java, variable.other.property.js, variable.other.property.jsx, variable.other.property.ts, variable.other.property.tsx, variable.other.readwrite.alias.js.jsx, variable.other.readwrite.alias.js, variable.other.readwrite.alias.ts, variable.other.readwrite.alias.tsx, variable.other.readwrite.cs, variable.other.readwrite.js, variable.other.readwrite.ts, variable.other.readwrite.tsx, variable.other.ruby, variable.other.rust, variable | #a9acca | — |
| invalid.deprecated, invalid.illegal, invalid | #FF4340 | — |
| entity.name.function.macro.rules.rust, entity.name.section.markdown, keyword.control.anchor.regexp, keyword.control.newline.tex, keyword.operator.negation.regexp, keyword.operator.or.regexp, keyword.operator.quantifier.regexp, keyword.other.back-reference.regexp, keyword, markdown.heading, markup.heading | markup.heading entity.name, markup.quote punctuation.definition.blockquote.markdown, markup.substitution.attribute-reference.asciidoc, meta.directive.erlang, meta.function.js, meta.method-call.with-arguments.js, meta.other.unknown.elm, meta.property-list.css.sass.prop, meta.separator, meta.structure.tuple.erlang, meta.vector.clojure, punctuation.access.module.scss, punctuation.accessor.cs, punctuation.accessor.dot.kotlin, punctuation.colon.graphql, punctuation.definition.block.sequence.item.yaml, punctuation.definition.constant.elixir, punctuation.definition.constant.ruby, punctuation.definition.entity.css, punctuation.definition.group.capture.regexp, punctuation.definition.keyValuePair.toml, punctuation.definition.scope.key-value.viml, punctuation.definition.variable.php, punctuation.definition.variable.powershell, punctuation.definition.variable.viml, punctuation.delimiter.property.dot.viml, punctuation.dot.dart, punctuation.other.period.go, punctuation.parens.ellipses.elm, punctuation.separator.argument-label.swift, punctuation.separator.clause-head-body.erlang, punctuation.separator.colon.viml, punctuation.separator.dictionary.key-value.json, punctuation.separator.generic-parameter-constraint.swift, punctuation.separator.inheritance-clause.swift, punctuation.separator.key-value, punctuation.separator.method.crystal, punctuation.separator.method.elixir, punctuation.separator.method.ruby, punctuation.separator.module-function.erlang, punctuation.separator.namespace.access.cpp, punctuation.separator.namespace.ruby, punctuation.separator.other.crystal, punctuation.separator.period.java, punctuation.separator.period.python, punctuation.separator.pointer-access.c, punctuation.separator.pointer-access, punctuation.type.flowtype, sass.script.maps, source.cpp punctuation.separator, source.fsharp keyword.symbol.new, source.js punctuation.accessor, source.jsx punctuation.accessor, source.ocaml keyword markup.underline, source.ocaml keyword.control markup.underline, source.ocaml storage.type markup.underline, source.ocaml support.type strong, source.ocaml variable.other.class.js message.error variable.interpolation string.regexp markup.underline, source.ocaml variable.other.class.js message.error variable.interpolation string.regexp strong, source.ocaml variable.other.class.js message.error variable.interpolation string.regexp, source.sass constant.numeric.module.dot, source.sass support.function.name keyword.control.at-rule, source.ts punctuation.accessor, source.tsx punctuation.accessor, storage.modifier.import.java punctuation.separator.java, storage, support.directive.restructuredtext, support.function.be.latex, support.function.section.latex, support.function.textbf.latex, support.function.textit.latex, support.function.url.latex, text.asciidoc markup.code, text.asciidoc markup.heading, text.restructuredtext punctuation.definition.field, variable.language.makefile, variable.other.anonymous.elixir punctuation.definition.variable.elixir, variable.other.member.wildcard.haskell, variable.other.normal.shell punctuation.definition.variable.shell, variable.other.positional.shell punctuation.definition.variable.shell, variable.other.special.shell punctuation.definition.variable.shell | #569CD6 | — |
| comment.punctuation.comma.sass, constant.asciidoc, constant.character.asciidoc, constant.language.unit.fsharp, constant.language.unit.haskell, keyword.operator.decorator.js, keyword.operator.exponent.rust, keyword.operator.exponent.sign, keyword.operator.list.shell, markup.heading.block-attribute.asciidoc, markup.heading.marker.asciidoc, markup.heading.setext, markup.macro.inline.passthrough.asciidoc, markup.other.url.asciidoc, markup.table.delimiter.asciidoc, meta.brace, meta.declaration.exports.haskell, meta.declaration.procedure.scheme, meta.function.definition.elixir, meta.function.method.with-arguments.ruby, meta.function.type-declaration.elm, meta.function.type-declaration.haskell, meta.function.type-record.elm, meta.metadata.simple.clojure, meta.preprocessor.haskell, meta.separator.markdown, meta.tag, meta.type.object.graphql, meta.variables.graphql, punctuation.definition.fenced.markdown, punctuation.definition.string.begin.elixir string.quoted.double.heredoc.elixir, punctuation.definition.string.end.elixir string.quoted.double.heredoc.elixir, punctuation.definition, punctuation.section.regexp.begin.elixir, punctuation.section.regexp.end.elixir, punctuation.separator.key-value.restructuredtext, punctuation, source.fsharp keyword.symbol, source.js meta.delimiter, source.ocaml string.regexp strong, source.sass entity.name.function, source.shell string.interpolated string.quoted punctuation.definition, storage.modifier.mut.rust, support.asciidoc, text.asciidoc constant.other.symbol, text.asciidoc markup.code markup.heading, variable.line-break.asciidoc | #4CE7FF | — |
| constant.character.format.placeholder.other.python, constant.language.import-export-all.tsx, constant.language.lua, constant.language.unit.idris, constant.numeric.math.tex, constant.other.footnote.link.restructuredtext, constant.other.placeholder.c, constant.other.placeholder.go, entity.name.package.kotlin, entity.name.tag, entity.name.type.option.rust, entity.name.type.result.rust, entity.other.attribute-name.table.toml, invalid.illegal.parenthesis.scheme, keyword.operator.module.all.js, keyword.other.crate.rust, markup.list.bullet.asciidoc, markup.underline.substitution.restructuredtext, meta.interpolation.cs variable.other.readwrite.cs, namespace.open.fsharp entity.name.section.fsharp, punctuation.definition.interpolation.rust, punctuation.definition.list.begin.markdown, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end, punctuation.definition.variable.shell, punctuation.quasi.element.begin.js, punctuation.quasi.element.end.js, punctuation.section.embedded, source.dart string.interpolated variable.parameter, source.elixir.embedded.source.empty, source.haskell keyword.other.preprocessor, source.js support.class.component, source.shell string.interpolated punctuation.definition, storage.type.format.python, string.interpolated.makefile variable.other.makefile, string.other.link.description.markdown, string.other.link.title.markdown, string.regexp constant.character, string.regexp constant, string.regexp keyword, string.regexp meta keyword, string.regexp meta punctuation meta.assertion, string.regexp meta punctuation, string.regexp meta.group, string.regexp punctuation, string.regexp, support.class.component, support.class.latex, support.class.math.latex, support.type.viml, text.restructuredtext meta.link.reference.def string.other.link.title.restructuredtext, variable.interpolation, variable.language.closure-parameter.swift, variable.language.kotlin, variable.language.super.rust, variable.language.swift, variable.other.readwrite.global.pre-defined.ruby, variable.other.readwrite.global.ruby | #EE37AA | — |
| entity.global.clojure, entity.name.function, entity.name.section.latex, keyword.control.layout.tex, keyword.control.ref.latex, markup.italic.quotes.asciidoc, markup.other.command.restructuredtext, meta.function.definition.parameters.c entity.name.function.c, meta.function.lua entity.name.function.lua, meta.macro.rules.rust entity.name.function.macro.rust, meta.method.identifier entity.name.function.java, source.css keyword.control.at-rule, source.sass support.function.name entity.name.function, support.function.magic.python | #8AF899 | — |
| constant.keyword.clojure, constant.language.symbol, constant.other.gleam, constant.other.reference.label.latex, constant.other.reference.link.markdown, constant.other.symbol, entity.name.tag.restructuredtext, entity.name.type.namespace.scope-resolution.cpp, entity.name.variable.parameter.cs, markup.heading.asciidoc, markup.heading.block-attribute.asciidoc, markup.meta.attribute-list.asciidoc, meta.declaration.data.algebraic.haskell meta.record.definition.haskell storage.type.haskell, meta.declaration.data.idris, meta.function-call.java, meta.function.parameters variable.other.readwrite, meta.function.parameters.js variable.other.readwrite.js, meta.function.parameters.php variable.other.php, meta.function.type-signature.idris entity.name.function.ctor.idris, meta.function.type-signature.idris, meta.method-call.java, meta.parameter.named.idris, source.crystal variable.other.readwrite, source.idris meta.function.type-signature entity.name.function.ctor, source.idris meta.function.type-signature meta.parameter, source.reason string.other.link, source.rust entity.name.type, entity.name.type.struct.rust, source.sass constant.character.module.name, storage.type.elm, storage.type.haskell, support.constant.attribute-name.asciidoc, support.variable.environment.viml, text.asciidoc markup.macro.block.general string.unquoted, text.asciidoc markup.other.url string.unquoted, variable.language.dart, variable.other.readwrite.powershell, variable.other, variable.parameter.function.swift entity.name.function.swift, variable.parameter, variable.scss, variable.type.elm | #C651E5 | — |
| constant.character.css.sass, constant.pathname.viml, markup.heading, markup.inserted.git_gutter, markup.mark.asciidoc, meta.attribute-selector.scss, source.reason string.regexp, string, support.function.general.tex, text.asciidoc markup.link, variable.parameter.url.css | #AECC00 | — |
| constant.character.escape, constant.character.numeric.regexp, constant.character, constant.other.character-class.regexp, keyword.type.cs, markup.heading.list.asciidoc, markup.highlight.asciidoc, string constant.other.placeholder | #7CDF89 | — |
| markup.admonition entity.name.function.asciidoc, variable.language.self.crystal, variable.language.special.self.python, variable.language.super.js.jsx, variable.language.super.js, variable.language.super.ts, variable.language.super.tsx | #EE37AA | italic |
| variable.language.this | #99C2EB | italic |
| variable.language.super.rust, variable.language.self.rust | — | italic |
| source.ocaml keyword markup.underline, source.ocaml keyword.control markup.underline, source.ocaml storage.type markup.underline, source.ocaml variable.other.class.js message.error variable.interpolation string.regexp markup.underline | — | |
| *url*, *link*, *uri* | — | underline |
| punctuation.definition.italic.markdown | #4CE7FF | italic |
| markup.italic | #AECC00 | italic |
| markup.bold markup.italic string, markup.bold markup.italic, markup.bold string, markup.bold, markup.italic markup.bold string, markup.italic markup.bold, markup.quote markup.bold string, markup.quote markup.bold | #AECC00 | bold |
| punctuation.definition.bold.markdown, markup.bold.asciidoc punctuation.definition.asciidoc | #4CE7FF | bold |
| markup.underline | #AECC00 | underline |
| markup.quote meta.paragraph.markdown | #8AF899 | italic |
| markup.inserted | #AECC00 | — |
| markup.deleted | #FF434080 | — |
| markup.changed | #C651E5 | — |
| token.info-token | #268BD2 | — |
| token.warn-token | #D33682 | — |
| token.error-token | #FF4340 | — |
| token.debug-token | #2AA198 | — |
| source.json meta.structure.dictionary.json support.type.property-name.json | #FF9D35 | — |
| source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json | #C651E5 | — |
| source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json | #FF89B5 | — |
| source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json | #99C2EB | — |
| source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json | #FF9D35 | — |
| source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json | #C651E5 | — |
| source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json | #FF89B5 | — |
| source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json | #99C2EB | — |
| source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json | #FF9D35 | — |
TypeScript sample highlighted with this variant's colors and tokenColors.
Loading...
export interface User {
id: string;
name: string;
role: "admin" | "member";
tags: string[];
}
/**
* Fetch user data by ID
* @param id
* @returns User object or null if ID is invalid
*/
export async function fetchUser(id: string): Promise<User | null> {
if (!id) {
return null;
}
const response = await fetch(`/api/users/${id}`, {
method: "GET",
headers: { Accept: "application/json" },
});
if (!response.ok) {
throw new Error(`HTTP ${response.status}`);
}
return (await response.json()) as User;
}
function greet(user: User): string {
// Simple greeting function that uses the user's name
return `Hello, ${user.name}!`;
}
export interface User {
id: string;
name: string;
role: "admin" | "member";
tags: string[];
}
/**
* Fetch user data by ID
* @param id
* @returns User object or null if ID is invalid
*/
export async function fetchUser(id: string): Promise<User | null> {
if (!id) {
return null;
}
const response = await fetch(`/api/users/${id}`, {
method: "GET",
headers: { Accept: "application/json" },
});
if (!response.ok) {
throw new Error(`HTTP ${response.status}`);
}
return (await response.json()) as User;
}
function greet(user: User): string {
// Simple greeting function that uses the user's name
return `Hello, ${user.name}!`;
}