diff --git a/docs/source/tutorials/register-filters-tags.md b/docs/source/tutorials/register-filters-tags.md
index 5005e1f22..dc938a114 100644
--- a/docs/source/tutorials/register-filters-tags.md
+++ b/docs/source/tutorials/register-filters-tags.md
@@ -6,13 +6,15 @@ title: Register Filters/Tags
```javascript
// Usage: {% upper name %}
+import { TagToken, Context, Emitter, TopLevelToken } from 'liquidjs'
+
engine.registerTag('upper', {
- parse: function(tagToken, remainTokens) {
+ parse: function(tagToken: TagToken, remainTokens: TopLevelToken[]) {
this.str = tagToken.args; // name
},
- render: async function(scope, hash) {
- var str = await this.liquid.evalValue(this.str, scope); // 'alice'
- return str.toUpperCase() // 'Alice'
+ render: async function(ctx: Context, emitter: Emitter) {
+ var str = await this.liquid.evalValue(this.str, ctx); // 'alice'
+ emitter.write(`${str.toUpperCase()}`) // 'Alice'
}
});
```
@@ -21,6 +23,7 @@ engine.registerTag('upper', {
* `render`: Combine scope data with your parsed tokens into HTML string.
See existing tag implementations here:
+See demo example here: https://github.com/harttle/liquidjs/blob/master/demo/typescript/index.ts
## Register Filters