n8n-nodes-base
Version:
Base nodes of n8n
130 lines (125 loc) • 3.73 kB
text/typescript
/**
* Telegram Node - Version 1
* Discriminator: resource=callback, operation=answerQuery
*/
interface Credentials {
telegramApi: CredentialReference;
}
/** Send answer to callback query sent from inline keyboard */
export type TelegramV1CallbackAnswerQueryParams = {
resource: 'callback';
operation: 'answerQuery';
/**
* Unique identifier for the query to be answered
*/
queryId?: string | Expression<string> | PlaceholderValue;
/**
* Additional Fields
* @default {}
*/
additionalFields?: {
/** The maximum amount of time in seconds that the result of the callback query may be cached client-side
* @default 0
*/
cache_time?: number | Expression<number>;
/** Whether an alert will be shown by the client instead of a notification at the top of the chat screen
* @default false
*/
show_alert?: boolean | Expression<boolean>;
/** Text of the notification. If not specified, nothing will be shown to the user, 0-200 characters.
*/
text?: string | Expression<string> | PlaceholderValue;
/** URL that will be opened by the user's client
*/
url?: string | Expression<string> | PlaceholderValue;
};
/**
* Adds a custom keyboard with reply options
* @displayOptions.show { replyMarkup: ["replyKeyboard"] }
* @default {}
*/
replyKeyboard?: {
/** Rows
*/
rows?: Array<{
/** The value to set
* @default {}
*/
row?: {
/** Buttons
*/
buttons?: Array<{
/** Text of the button. If none of the optional fields are used, it will be sent as a message when the button is pressed.
*/
text?: string | Expression<string> | PlaceholderValue;
/** Additional Fields
* @default {}
*/
additionalFields?: {
/** Whether the user's phone number will be sent as a contact when the button is pressed.Available in private chats only
* @default false
*/
request_contact?: boolean | Expression<boolean>;
/** Whether the user's request_location
* @default false
*/
request_location?: boolean | Expression<boolean>;
/** Launch the Telegram Web App
* @default {}
*/
web_app?: {
/** An HTTPS URL of a Web App to be opened
*/
url?: string | Expression<string> | PlaceholderValue;
};
};
}>;
};
}>;
};
/**
* Reply Keyboard Options
* @displayOptions.show { replyMarkup: ["replyKeyboard"] }
* @default {}
*/
replyKeyboardOptions?: {
/** Whether to request clients to resize the keyboard vertically for optimal fit
* @default false
*/
resize_keyboard?: boolean | Expression<boolean>;
/** Whether to request clients to hide the keyboard as soon as it's been used
* @default false
*/
one_time_keyboard?: boolean | Expression<boolean>;
/** Whether to show the keyboard to specific users only
* @default false
*/
selective?: boolean | Expression<boolean>;
};
/**
* Reply Keyboard Remove
* @displayOptions.show { replyMarkup: ["replyKeyboardRemove"] }
* @default {}
*/
replyKeyboardRemove?: {
/** Whether to request clients to remove the custom keyboard
* @default false
*/
remove_keyboard?: boolean | Expression<boolean>;
/** Whether to force reply from specific users only
* @default false
*/
selective?: boolean | Expression<boolean>;
};
};
export type TelegramV1CallbackAnswerQueryOutput = {
ok?: boolean;
result?: boolean;
};
export type TelegramV1CallbackAnswerQueryNode = {
type: 'n8n-nodes-base.telegram';
version: 1;
credentials?: Credentials;
config: NodeConfig<TelegramV1CallbackAnswerQueryParams>;
output?: Items<TelegramV1CallbackAnswerQueryOutput>;
};