interface GoogleCredentialResponse { credential: string; select_by?: string; } interface GoogleAccountsId { initialize: (options: { client_id: string; callback: (response: GoogleCredentialResponse) => void; ux_mode?: 'popup' | 'redirect'; }) => void; renderButton: ( parent: HTMLElement, options?: { theme?: 'outline' | 'filled_blue' | 'filled_black'; size?: 'large' | 'medium' | 'small'; type?: 'standard' | 'icon'; shape?: 'rectangular' | 'pill' | 'circle' | 'square'; text?: 'signin_with' | 'signup_with' | 'continue_with' | 'signin'; width?: number; locale?: string; } ) => void; } interface GoogleAccounts { id: GoogleAccountsId; } interface GoogleGlobal { accounts: GoogleAccounts; } interface Window { google?: GoogleGlobal; }