/**
 * Google Chat Node - Version 1
 * Discriminator: resource=member, operation=getAll
 */


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

/** Get many memberships in a space */
export type GoogleChatV1MemberGetAllParams = {
  resource: 'member';
  operation: 'getAll';
  authentication?: 'oAuth2' | 'serviceAccount' | Expression<string>;
/**
 * The name of the space for which to retrieve members, in the form "spaces/*". Choose from the list, or specify an ID using an &lt;a href="https://docs.n8n.io/code/expressions/"&gt;expression&lt;/a&gt;.
 * @default []
 */
    spaceId?: string | Expression<string>;
/**
 * 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 100
 */
    limit?: number | Expression<number>;
};

export type GoogleChatV1MemberGetAllOutput = {
  createTime?: string;
  member?: {
    displayName?: string;
    domainId?: string;
    name?: string;
    type?: string;
  };
  name?: string;
  role?: string;
  state?: string;
};

export type GoogleChatV1MemberGetAllNode = {
  type: 'n8n-nodes-base.googleChat';
  version: 1;
  credentials?: Credentials;
  config: NodeConfig<GoogleChatV1MemberGetAllParams>;
  output?: Items<GoogleChatV1MemberGetAllOutput>;
};