/**
 * Google Books Node - Version 2
 * Discriminator: resource=bookshelf, operation=getAll
 */


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

/** Get many public bookshelf resource for the specified user */
export type GoogleBooksV2BookshelfGetAllParams = {
  resource: 'bookshelf';
  operation: 'getAll';
/**
 * Authentication
 * @default oAuth2
 */
    authentication?: 'oAuth2' | 'serviceAccount' | Expression<string>;
/**
 * My Library
 * @default false
 */
    myLibrary?: boolean | Expression<boolean>;
/**
 * ID of user
 * @displayOptions.hide { myLibrary: [true] }
 */
    userId?: string | Expression<string> | PlaceholderValue;
/**
 * Whether to return all results or only up to a given limit
 * @default false
 */
    returnAll?: boolean | Expression<boolean>;
/**
 * Max number of results to return
 * @displayOptions.show { returnAll: [false] }
 * @default 40
 */
    limit?: number | Expression<number>;
};

export type GoogleBooksV2BookshelfGetAllNode = {
  type: 'n8n-nodes-base.googleBooks';
  version: 2;
  credentials?: Credentials;
  config: NodeConfig<GoogleBooksV2BookshelfGetAllParams>;
};