/**
 * Slack Node - Version 2.1
 * Discriminator: resource=channel, operation=member
 */


interface Credentials {
  slackApi: CredentialReference;
  slackOAuth2Api: CredentialReference;
}

/** List members of a conversation */
export type SlackV21ChannelMemberParams = {
  resource: 'channel';
  operation: 'member';
  authentication?: 'accessToken' | 'oAuth2' | Expression<string>;
/**
 * The Slack channel to get the members from
 * @default {"mode":"list","value":""}
 */
    channelId?: { __rl: true; mode: 'list' | 'id' | 'url'; value: string; cachedResultName?: 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>;
/**
 * Whether to resolve the data automatically. By default the response only contain the ID to resource.
 * @default false
 */
    resolveData?: boolean | Expression<boolean>;
};

export type SlackV21ChannelMemberOutput = {
  member?: string;
};

export type SlackV21ChannelMemberNode = {
  type: 'n8n-nodes-base.slack';
  version: 2.1;
  credentials?: Credentials;
  config: NodeConfig<SlackV21ChannelMemberParams>;
  output?: Items<SlackV21ChannelMemberOutput>;
};