import { DefinedFieldMetadata, FieldMetadata, TailorField, TailorFieldType } from "../../types/field.types.mjs"; import { AuthConnectionConfig, AuthConnectionOAuth2Config } from "../../../types/auth-connection.generated.mjs"; import { BuiltinIdP, IDToken, IdProvider, OAuth2ClientInput, OIDC, SAML, SCIMAttribute, SCIMAttributeMapping, SCIMAuthorization, SCIMConfig, SCIMResource, TenantProvider } from "../../../types/auth.generated.mjs"; import { AuthConfig, AuthConnectionTokenResult, AuthExternalConfig, AuthOwnConfig, AuthServiceInput, BeforeLoginClaims, BeforeLoginHookArgs, DefinedAuth, FederatedIdentity, FederatedIdentityClaims, FederatedIdentityProvider, OAuth2ClientGrantType, SCIMAttributeType, UserAttributeKey, UserAttributeListKey, UserAttributes, UsernameFieldKey, ValueOperand } from "./types.mjs"; import { TailorDBInstance } from "../tailordb/schema.mjs"; //#region src/configure/services/auth/index.d.ts type MachineUserAttributeFields = Record>; type PlaceholderUser = TailorDBInstance, Record>; type PlaceholderAttributes = UserAttributes; type PlaceholderAttributeList = UserAttributeListKey[]; type UserProfileAuthInput, AttributeList extends UserAttributeListKey[], MachineUserNames extends string, ConnectionNames extends string = string> = Omit, "userProfile" | "machineUserAttributes"> & { userProfile: NonNullable["userProfile"]>; machineUserAttributes?: never; }; type MachineUserOnlyAuthInput = Omit, "userProfile" | "machineUserAttributes"> & { userProfile?: never; machineUserAttributes: MachineUserAttributes; }; /** * Define an auth service for the Tailor SDK. * @template Name * @template User * @template Attributes * @template AttributeList * @template MachineUserNames * @param name - Auth service name * @param config - Auth service configuration * @returns Defined auth service */ export declare function defineAuth, const AttributeList extends UserAttributeListKey[], const MachineUserNames extends string, const ConnectionNames extends string = string>(name: Name, config: UserProfileAuthInput): DefinedAuth>; export declare function defineAuth(name: Name, config: MachineUserOnlyAuthInput): DefinedAuth>; //#endregion export type { AuthConfig, AuthConnectionConfig, AuthConnectionOAuth2Config, AuthConnectionTokenResult, AuthExternalConfig, AuthOwnConfig, AuthServiceInput, BeforeLoginClaims, BeforeLoginHookArgs, BuiltinIdP, DefinedAuth, FederatedIdentity, FederatedIdentityClaims, FederatedIdentityProvider, IDToken, IdProvider as IdProviderConfig, OAuth2ClientInput as OAuth2Client, OAuth2ClientGrantType, OIDC, SAML, SCIMAttribute, SCIMAttributeMapping, SCIMAttributeType, SCIMAuthorization, SCIMConfig, SCIMResource, TenantProvider as TenantProviderConfig, UserAttributeKey, UserAttributeListKey, UserAttributes, UsernameFieldKey, ValueOperand };