import { Logger } from '@n8n/backend-common'; import type { ICredentialContext } from 'n8n-workflow'; import { z } from 'zod'; import { CacheService } from '../../../../services/cache/cache.service'; import { ITokenIdentifier } from './identifier-interface'; export declare const OAuth2IntrospectionOptionsSchema: z.ZodObject<{ validation: z.ZodLiteral<"oauth2-introspection">; clientId: z.ZodString; clientSecret: z.ZodString; metadataUri: z.ZodString; subjectClaim: z.ZodDefault>; }, "strip", z.ZodTypeAny, { validation: "oauth2-introspection"; clientId: string; clientSecret: string; metadataUri: string; subjectClaim: string; }, { validation: "oauth2-introspection"; clientId: string; clientSecret: string; metadataUri: string; subjectClaim?: string | undefined; }>; export declare const TokenIntrospectionResponseSchema: z.ZodObject<{ active: z.ZodBoolean; scope: z.ZodOptional; client_id: z.ZodOptional; username: z.ZodOptional; token_type: z.ZodOptional; exp: z.ZodOptional; iat: z.ZodOptional; nbf: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; iss: z.ZodOptional; jti: z.ZodOptional; }, "passthrough", z.ZodTypeAny, z.objectOutputType<{ active: z.ZodBoolean; scope: z.ZodOptional; client_id: z.ZodOptional; username: z.ZodOptional; token_type: z.ZodOptional; exp: z.ZodOptional; iat: z.ZodOptional; nbf: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; iss: z.ZodOptional; jti: z.ZodOptional; }, z.ZodTypeAny, "passthrough">, z.objectInputType<{ active: z.ZodBoolean; scope: z.ZodOptional; client_id: z.ZodOptional; username: z.ZodOptional; token_type: z.ZodOptional; exp: z.ZodOptional; iat: z.ZodOptional; nbf: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; iss: z.ZodOptional; jti: z.ZodOptional; }, z.ZodTypeAny, "passthrough">>; export type TokenIntrospectionResponse = z.infer; export declare class OAuth2TokenIntrospectionIdentifier implements ITokenIdentifier { private readonly logger; private readonly cache; constructor(logger: Logger, cache: CacheService); validateOptions(identifierOptions: Record): Promise; resolve(context: ICredentialContext, identifierOptions: Record): Promise; private parseOptions; private fetchMetadata; private buildClientBasicRequest; private buildClientPostRequest; private parseIntrospectionResponse; private resolveBasedOnTokenIntrospection; }