/**
 * Google Translate Node - Version 2
 * Discriminator: resource=language, operation=translate
 */


interface Credentials {
  googleApi: CredentialReference;
  googleTranslateOAuth2Api: CredentialReference;
}

/** Translate data */
export type GoogleTranslateV2LanguageTranslateParams = {
  resource: 'language';
  operation: 'translate';
/**
 * Authentication
 * @default oAuth2
 */
    authentication?: 'oAuth2' | 'serviceAccount' | Expression<string>;
/**
 * The input text to translate
 */
    text?: string | Expression<string> | PlaceholderValue;
/**
 * The language to use for translation of the input text, set to one of the language codes listed in &lt;a href="https://cloud.google.com/translate/docs/languages"&gt;Language Support&lt;/a&gt;. Choose from the list, or specify an ID using an &lt;a href="https://docs.n8n.io/code/expressions/"&gt;expression&lt;/a&gt;.
 */
    translateTo?: string | Expression<string>;
};

export type GoogleTranslateV2LanguageTranslateOutput = {
  detectedSourceLanguage?: string;
  translatedText?: string;
};

export type GoogleTranslateV2LanguageTranslateNode = {
  type: 'n8n-nodes-base.googleTranslate';
  version: 2;
  credentials?: Credentials;
  config: NodeConfig<GoogleTranslateV2LanguageTranslateParams>;
  output?: Items<GoogleTranslateV2LanguageTranslateOutput>;
};