export interface PartnerIdPConfig { id: string; partner_app_id: string; name: string; type: 'oidc'; discovery_url: string; idp_client_id: string; scopes: string[]; claim_mappings: Record; mode: 'strict' | 'partner_managed'; allowed_email_domains: string[] | null; is_active: boolean; issuer: string | null; authorization_endpoint: string | null; token_endpoint: string | null; userinfo_endpoint: string | null; jwks_uri: string | null; discovery_last_fetched_at: string | null; created_at: string; updated_at: string; } export interface CreateIdPConfigRequest { name: string; discovery_url: string; idp_client_id: string; idp_client_secret: string; scopes?: string[]; claim_mappings?: Record; mode: 'strict' | 'partner_managed'; allowed_email_domains?: string[]; } export interface UpdateIdPConfigRequest { name?: string; discovery_url?: string; idp_client_id?: string; idp_client_secret?: string; scopes?: string[]; claim_mappings?: Record; mode?: 'strict' | 'partner_managed'; allowed_email_domains?: string[]; is_active?: boolean; } export type SSOTarget = 'web' | 'desktop' | 'backlog' | `meeting:${string}`; export declare function buildMeetingTarget(meetingId: string): SSOTarget; export interface SSOEntryUrlOptions { slug: string; target?: SSOTarget; loginHint?: string; auto?: boolean; } export type IdpDomainVerificationStatus = 'pending' | 'verified' | 'expired'; export interface IdpDomainVerification { domain: string; dns_record_name?: string; dns_record_value?: string; status: IdpDomainVerificationStatus; expires_at?: string; verified_at?: string; } //# sourceMappingURL=idp.d.ts.map