> For the complete documentation index, see [llms.txt](https://degreetpro.gitbook.io/degreet-telegram/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://degreetpro.gitbook.io/degreet-telegram/basics/options.md).

# Options

{% tabs %}
{% tab title="TypeScript" %}

```typescript
import { Keyboard, Options } from 'degreet-telegram'
import { IContext } from 'degreet-telegram/src/types'

bot.listen(
  ['Hello, world', 'Hello!'],
  async (ctx: IContext): Promise<void> => {
    try {
      await ctx.msg.send(
        ctx.msg.text,
        new Keyboard('under_the_message')
          .btn('callback', 'Button text', 'button_action').row(),
        new Options()
          .disableWebPagePreview()
          .disableNotification()
          .replyTo(ctx.msg.id)
      )
    } catch (e: any) {
      console.error(e)
    }
  }
)
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const { Keyboard, Options } = require('degreet-telegram')

bot.listen(
  ['Hello, world', 'Hello!'],
  async (ctx) => {
    try {
      await ctx.msg.send(
        ctx.msg.text,
        new Keyboard('under_the_message')
          .btn('callback', 'Button text', 'button_action').row(),
        new Options()
          .disableWebPagePreview()
          .disableNotification()
          .replyTo(ctx.msg.id)
      )
    } catch (e) {
      console.error(e)
    }
  }
)
```

{% endtab %}
{% endtabs %}

You can also pass the 4th parameter to Keyboard.btn how true, and it will be hide

All types of Keyboard.btn: base for under\_the\_chat, callback and cb, requestContact, requestLocation, webApp, url, switchInlineQuery
