WebKit · IOS API REFERENCE
WKWebExtensionContext
class · iOS 18.4+ · SDK 27.1
@MainActor class WKWebExtensionContext
Members (87)
get · iOS 18.4+deniedPermissionMatchPatternsWereRemovedNotification
TypeScriptstatic get deniedPermissionMatchPatternsWereRemovedNotification(): Promise<_Foundation_NSNotification_Name>
Swift declarationnonisolated class let deniedPermissionMatchPatternsWereRemovedNotification: NSNotification.Name
get · iOS 18.4+deniedPermissionsWereRemovedNotification
TypeScriptstatic get deniedPermissionsWereRemovedNotification(): Promise<_Foundation_NSNotification_Name>
Swift declarationnonisolated class let deniedPermissionsWereRemovedNotification: NSNotification.Name
get · iOS 18.4+errorDomain
TypeScriptstatic get errorDomain(): Promise<string>
Swift declarationnonisolated class let errorDomain: String
get · iOS 18.4+errorsDidUpdateNotification
TypeScriptstatic get errorsDidUpdateNotification(): Promise<_Foundation_NSNotification_Name>
Swift declarationnonisolated class let errorsDidUpdateNotification: NSNotification.Name
get · iOS 18.4+grantedPermissionMatchPatternsWereRemovedNotification
TypeScriptstatic get grantedPermissionMatchPatternsWereRemovedNotification(): Promise<_Foundation_NSNotification_Name>
Swift declarationnonisolated class let grantedPermissionMatchPatternsWereRemovedNotification: NSNotification.Name
get · iOS 18.4+grantedPermissionsWereRemovedNotification
TypeScriptstatic get grantedPermissionsWereRemovedNotification(): Promise<_Foundation_NSNotification_Name>
Swift declarationnonisolated class let grantedPermissionsWereRemovedNotification: NSNotification.Name
get · iOS 18.4+permissionMatchPatternsWereDeniedNotification
TypeScriptstatic get permissionMatchPatternsWereDeniedNotification(): Promise<_Foundation_NSNotification_Name>
Swift declarationnonisolated class let permissionMatchPatternsWereDeniedNotification: NSNotification.Name
get · iOS 18.4+permissionMatchPatternsWereGrantedNotification
TypeScriptstatic get permissionMatchPatternsWereGrantedNotification(): Promise<_Foundation_NSNotification_Name>
Swift declarationnonisolated class let permissionMatchPatternsWereGrantedNotification: NSNotification.Name
get · iOS 18.4+permissionsWereDeniedNotification
TypeScriptstatic get permissionsWereDeniedNotification(): Promise<_Foundation_NSNotification_Name>
Swift declarationnonisolated class let permissionsWereDeniedNotification: NSNotification.Name
get · iOS 18.4+permissionsWereGrantedNotification
TypeScriptstatic get permissionsWereGrantedNotification(): Promise<_Foundation_NSNotification_Name>
Swift declarationnonisolated class let permissionsWereGrantedNotification: NSNotification.Name
method · iOS 18.4+action
TypeScriptaction(tab?: (Implements<WKWebExtensionTab> | SDKHandle) | null): Promise<(WKWebExtension_Action) | null>
Swift declarationfunc action(for tab: (any WKWebExtensionTab)?) -> WKWebExtension.Action?
method · iOS 18.4+clearUserGesture
TypeScriptclearUserGesture(tab: Implements<WKWebExtensionTab> | SDKHandle): Promise<void>
Swift declarationfunc clearUserGesture(in tab: any WKWebExtensionTab)
method · iOS 18.4+didChangeTabProperties
TypeScriptdidChangeTabProperties(properties: WKWebExtension_TabChangedProperties, changedTab: Implements<WKWebExtensionTab> | SDKHandle): Promise<void>
Swift declarationfunc didChangeTabProperties(_ properties: WKWebExtension.TabChangedProperties, for changedTab: any WKWebExtensionTab)
method · iOS 18.4+didCloseWindow
TypeScriptdidCloseWindow(closedWindow: Implements<WKWebExtensionWindow> | SDKHandle): Promise<void>
Swift declarationfunc didCloseWindow(_ closedWindow: any WKWebExtensionWindow)
method · iOS 18.4+didDeselectTabs
TypeScriptdidDeselectTabs(deselectedTabs: Array<Implements<WKWebExtensionTab> | SDKHandle>): Promise<void>
Swift declarationfunc didDeselectTabs(_ deselectedTabs: [any WKWebExtensionTab])
method · iOS 18.4+didFocusWindow
TypeScriptdidFocusWindow(focusedWindow?: (Implements<WKWebExtensionWindow> | SDKHandle) | null): Promise<void>
Swift declarationfunc didFocusWindow(_ focusedWindow: (any WKWebExtensionWindow)?)
method · iOS 18.4+didOpenTab
TypeScriptdidOpenTab(newTab: Implements<WKWebExtensionTab> | SDKHandle): Promise<void>
Swift declarationfunc didOpenTab(_ newTab: any WKWebExtensionTab)
method · iOS 18.4+didOpenWindow
TypeScriptdidOpenWindow(newWindow: Implements<WKWebExtensionWindow> | SDKHandle): Promise<void>
Swift declarationfunc didOpenWindow(_ newWindow: any WKWebExtensionWindow)
method · iOS 18.4+didReplaceTab
TypeScriptdidReplaceTab(oldTab: Implements<WKWebExtensionTab> | SDKHandle, newTab: Implements<WKWebExtensionTab> | SDKHandle): Promise<void>
Swift declarationfunc didReplaceTab(_ oldTab: any WKWebExtensionTab, with newTab: any WKWebExtensionTab)
method · iOS 18.4+didSelectTabs
TypeScriptdidSelectTabs(selectedTabs: Array<Implements<WKWebExtensionTab> | SDKHandle>): Promise<void>
Swift declarationfunc didSelectTabs(_ selectedTabs: [any WKWebExtensionTab])
method · iOS 18.4+hasAccess
TypeScripthasAccessTo(url: string): Promise<boolean>
Swift declarationfunc hasAccess(to url: URL) -> Bool
method · iOS 18.4+hasAccess
TypeScripthasAccessToIn(url: string, tab?: (Implements<WKWebExtensionTab> | SDKHandle) | null): Promise<boolean>
Swift declarationfunc hasAccess(to url: URL, in tab: (any WKWebExtensionTab)?) -> Bool
method · iOS 18.4+hasActiveUserGesture
TypeScripthasActiveUserGesture(tab: Implements<WKWebExtensionTab> | SDKHandle): Promise<boolean>
Swift declarationfunc hasActiveUserGesture(in tab: any WKWebExtensionTab) -> Bool
method · iOS 18.4+hasInjectedContent
TypeScripthasInjectedContentFor(url: string): Promise<boolean>
Swift declarationfunc hasInjectedContent(for url: URL) -> Bool
method · iOS 18.4+hasPermission
TypeScripthasPermission(permission: WKWebExtension_Permission): Promise<boolean>
Swift declarationfunc hasPermission(_ permission: WKWebExtension.Permission) -> Bool
method · iOS 18.4+hasPermission
TypeScripthasPermissionIn(permission: WKWebExtension_Permission, tab?: (Implements<WKWebExtensionTab> | SDKHandle) | null): Promise<boolean>
Swift declarationfunc hasPermission(_ permission: WKWebExtension.Permission, in tab: (any WKWebExtensionTab)?) -> Bool
init · iOS 18.4+init
TypeScriptstatic init(extension: WKWebExtension): Promise<WKWebExtensionContext>
Swift declarationinit(for extension: WKWebExtension)
method · iOS 18.4+loadBackgroundContent
TypeScriptloadBackgroundContent(completionHandler: ((arg0: (NativeError) | null) => void)): Promise<void>
Swift declarationfunc loadBackgroundContent() async throws
method · iOS 18.4+menuItems
TypeScriptmenuItems(tab: Implements<WKWebExtensionTab> | SDKHandle): Promise<Array<_UIKit_UIMenuElement>>
Swift declarationfunc menuItems(for tab: any WKWebExtensionTab) -> [UIMenuElement]
method · iOS 18.4+performAction
TypeScriptperformAction(tab?: (Implements<WKWebExtensionTab> | SDKHandle) | null): Promise<void>
Swift declarationfunc performAction(for tab: (any WKWebExtensionTab)?)
method · iOS 18.4+performCommand
TypeScriptperformCommand(command: WKWebExtension_Command): Promise<void>
Swift declarationfunc performCommand(_ command: WKWebExtension.Command)
method · iOS 18.4+performCommand
TypeScriptperformCommandFor(keyCommand: _UIKit_UIKeyCommand): Promise<boolean>
Swift declarationfunc performCommand(for keyCommand: UIKeyCommand) -> Bool
method · iOS 18.4+permissionStatus
TypeScriptpermissionStatusFor(pattern: WKWebExtension_MatchPattern): Promise<WKWebExtensionContext_PermissionStatus>
Swift declarationfunc permissionStatus(for pattern: WKWebExtension.MatchPattern) -> WKWebExtensionContext.PermissionStatus
method · iOS 18.4+permissionStatus
TypeScriptpermissionStatusForIn(pattern: WKWebExtension_MatchPattern, tab?: (Implements<WKWebExtensionTab> | SDKHandle) | null): Promise<WKWebExtensionContext_PermissionStatus>
Swift declarationfunc permissionStatus(for pattern: WKWebExtension.MatchPattern, in tab: (any WKWebExtensionTab)?) -> WKWebExtensionContext.PermissionStatus
method · iOS 18.4+permissionStatus
TypeScriptpermissionStatusFor51407(permission: WKWebExtension_Permission): Promise<WKWebExtensionContext_PermissionStatus>
Swift declarationfunc permissionStatus(for permission: WKWebExtension.Permission) -> WKWebExtensionContext.PermissionStatus
method · iOS 18.4+permissionStatus
TypeScriptpermissionStatusForIn75963(permission: WKWebExtension_Permission, tab?: (Implements<WKWebExtensionTab> | SDKHandle) | null): Promise<WKWebExtensionContext_PermissionStatus>
Swift declarationfunc permissionStatus(for permission: WKWebExtension.Permission, in tab: (any WKWebExtensionTab)?) -> WKWebExtensionContext.PermissionStatus
method · iOS 18.4+permissionStatus
TypeScriptpermissionStatusFor21065(url: string): Promise<WKWebExtensionContext_PermissionStatus>
Swift declarationfunc permissionStatus(for url: URL) -> WKWebExtensionContext.PermissionStatus
method · iOS 18.4+permissionStatus
TypeScriptpermissionStatusForIn76857(url: string, tab?: (Implements<WKWebExtensionTab> | SDKHandle) | null): Promise<WKWebExtensionContext_PermissionStatus>
Swift declarationfunc permissionStatus(for url: URL, in tab: (any WKWebExtensionTab)?) -> WKWebExtensionContext.PermissionStatus
method · iOS 18.4+setPermissionStatus
TypeScriptsetPermissionStatusFor(status: WKWebExtensionContext_PermissionStatus, pattern: WKWebExtension_MatchPattern): Promise<void>
Swift declarationfunc setPermissionStatus(_ status: WKWebExtensionContext.PermissionStatus, for pattern: WKWebExtension.MatchPattern)
method · iOS 18.4+setPermissionStatus
TypeScriptsetPermissionStatusForExpirationDate(status: WKWebExtensionContext_PermissionStatus, pattern: WKWebExtension_MatchPattern, expirationDate?: (globalThis.Date) | null): Promise<void>
Swift declarationfunc setPermissionStatus(_ status: WKWebExtensionContext.PermissionStatus, for pattern: WKWebExtension.MatchPattern, expirationDate: Date?)
method · iOS 18.4+setPermissionStatus
TypeScriptsetPermissionStatusFor3023(status: WKWebExtensionContext_PermissionStatus, permission: WKWebExtension_Permission): Promise<void>
Swift declarationfunc setPermissionStatus(_ status: WKWebExtensionContext.PermissionStatus, for permission: WKWebExtension.Permission)
method · iOS 18.4+setPermissionStatus
TypeScriptsetPermissionStatusForExpirationDate9336(status: WKWebExtensionContext_PermissionStatus, permission: WKWebExtension_Permission, expirationDate?: (globalThis.Date) | null): Promise<void>
Swift declarationfunc setPermissionStatus(_ status: WKWebExtensionContext.PermissionStatus, for permission: WKWebExtension.Permission, expirationDate: Date?)
method · iOS 18.4+setPermissionStatus
TypeScriptsetPermissionStatusFor98953(status: WKWebExtensionContext_PermissionStatus, url: string): Promise<void>
Swift declarationfunc setPermissionStatus(_ status: WKWebExtensionContext.PermissionStatus, for url: URL)
method · iOS 18.4+setPermissionStatus
TypeScriptsetPermissionStatusForExpirationDate22950(status: WKWebExtensionContext_PermissionStatus, url: string, expirationDate?: (globalThis.Date) | null): Promise<void>
Swift declarationfunc setPermissionStatus(_ status: WKWebExtensionContext.PermissionStatus, for url: URL, expirationDate: Date?)
method · iOS 18.4+userGesturePerformed
TypeScriptuserGesturePerformed(tab: Implements<WKWebExtensionTab> | SDKHandle): Promise<void>
Swift declarationfunc userGesturePerformed(in tab: any WKWebExtensionTab)
get · iOS 18.4+baseURL
TypeScriptget baseURL(): Promise<string>
Swift declarationvar baseURL: URL { get set }
set · iOS 18.4+baseURL
TypeScriptsetBaseURL(value: string): Promise<void>
Swift declarationvar baseURL: URL { get set }
get · iOS 18.4+commands
TypeScriptget commands(): Promise<Array<WKWebExtension_Command>>
Swift declarationvar commands: [WKWebExtension.Command] { get }
get · iOS 18.4+currentPermissionMatchPatterns
TypeScriptget currentPermissionMatchPatterns(): Promise<Array<WKWebExtension_MatchPattern>>
Swift declarationvar currentPermissionMatchPatterns: Set<WKWebExtension.MatchPattern> { get }
get · iOS 18.4+currentPermissions
TypeScriptget currentPermissions(): Promise<Array<WKWebExtension_Permission>>
Swift declarationvar currentPermissions: Set<WKWebExtension.Permission> { get }
get · iOS 18.4+deniedPermissionMatchPatterns
TypeScriptget deniedPermissionMatchPatterns(): Promise<NativeMap<WKWebExtension_MatchPattern, globalThis.Date>>
Swift declarationvar deniedPermissionMatchPatterns: [WKWebExtension.MatchPattern : Date] { get set }
set · iOS 18.4+deniedPermissionMatchPatterns
TypeScriptsetDeniedPermissionMatchPatterns(value: NativeMap<WKWebExtension_MatchPattern, globalThis.Date>): Promise<void>
Swift declarationvar deniedPermissionMatchPatterns: [WKWebExtension.MatchPattern : Date] { get set }
get · iOS 18.4+deniedPermissions
TypeScriptget deniedPermissions(): Promise<NativeMap<WKWebExtension_Permission, globalThis.Date>>
Swift declarationvar deniedPermissions: [WKWebExtension.Permission : Date] { get set }
set · iOS 18.4+deniedPermissions
TypeScriptsetDeniedPermissions(value: NativeMap<WKWebExtension_Permission, globalThis.Date>): Promise<void>
Swift declarationvar deniedPermissions: [WKWebExtension.Permission : Date] { get set }
get · iOS 18.4+errors
TypeScriptget errors(): Promise<Array<NativeError>>
Swift declarationvar errors: [any Error] { get }
get · iOS 18.4+focusedWindow
TypeScriptget focusedWindow(): Promise<(SDKHandle) | null>
Swift declarationweak var focusedWindow: (any WKWebExtensionWindow)? { get }
get · iOS 18.4+grantedPermissionMatchPatterns
TypeScriptget grantedPermissionMatchPatterns(): Promise<NativeMap<WKWebExtension_MatchPattern, globalThis.Date>>
Swift declarationvar grantedPermissionMatchPatterns: [WKWebExtension.MatchPattern : Date] { get set }
set · iOS 18.4+grantedPermissionMatchPatterns
TypeScriptsetGrantedPermissionMatchPatterns(value: NativeMap<WKWebExtension_MatchPattern, globalThis.Date>): Promise<void>
Swift declarationvar grantedPermissionMatchPatterns: [WKWebExtension.MatchPattern : Date] { get set }
get · iOS 18.4+grantedPermissions
TypeScriptget grantedPermissions(): Promise<NativeMap<WKWebExtension_Permission, globalThis.Date>>
Swift declarationvar grantedPermissions: [WKWebExtension.Permission : Date] { get set }
set · iOS 18.4+grantedPermissions
TypeScriptsetGrantedPermissions(value: NativeMap<WKWebExtension_Permission, globalThis.Date>): Promise<void>
Swift declarationvar grantedPermissions: [WKWebExtension.Permission : Date] { get set }
get · iOS 18.4+hasAccessToAllHosts
TypeScriptget hasAccessToAllHosts(): Promise<boolean>
Swift declarationvar hasAccessToAllHosts: Bool { get }
get · iOS 18.4+hasAccessToAllURLs
TypeScriptget hasAccessToAllURLs(): Promise<boolean>
Swift declarationvar hasAccessToAllURLs: Bool { get }
get · iOS 18.4+hasAccessToPrivateData
TypeScriptget hasAccessToPrivateData(): Promise<boolean>
Swift declarationvar hasAccessToPrivateData: Bool { get set }
set · iOS 18.4+hasAccessToPrivateData
TypeScriptsetHasAccessToPrivateData(value: boolean): Promise<void>
Swift declarationvar hasAccessToPrivateData: Bool { get set }
get · iOS 18.4+hasContentModificationRules
TypeScriptget hasContentModificationRules(): Promise<boolean>
Swift declarationvar hasContentModificationRules: Bool { get }
get · iOS 18.4+hasInjectedContent
TypeScriptget hasInjectedContent(): Promise<boolean>
Swift declarationvar hasInjectedContent: Bool { get }
get · iOS 18.4+hasRequestedOptionalAccessToAllHosts
TypeScriptget hasRequestedOptionalAccessToAllHosts(): Promise<boolean>
Swift declarationvar hasRequestedOptionalAccessToAllHosts: Bool { get set }
set · iOS 18.4+hasRequestedOptionalAccessToAllHosts
TypeScriptsetHasRequestedOptionalAccessToAllHosts(value: boolean): Promise<void>
Swift declarationvar hasRequestedOptionalAccessToAllHosts: Bool { get set }
get · iOS 18.4+isInspectable
TypeScriptget isInspectable(): Promise<boolean>
Swift declarationvar isInspectable: Bool { get set }
set · iOS 18.4+isInspectable
TypeScriptsetIsInspectable(value: boolean): Promise<void>
Swift declarationvar isInspectable: Bool { get set }
get · iOS 18.4+inspectionName
TypeScriptget inspectionName(): Promise<(string) | null>
Swift declarationvar inspectionName: String? { get set }
set · iOS 18.4+inspectionName
TypeScriptsetInspectionName(value?: (string) | null): Promise<void>
Swift declarationvar inspectionName: String? { get set }
get · iOS 18.4+isLoaded
TypeScriptget isLoaded(): Promise<boolean>
Swift declarationvar isLoaded: Bool { get }
get · iOS 18.4+openTabs
TypeScriptget openTabs(): Promise<Array<unknown>>
Swift declarationvar openTabs: Set<AnyHashable> { get }
get · iOS 18.4+openWindows
TypeScriptget openWindows(): Promise<Array<SDKHandle>>
Swift declarationvar openWindows: [any WKWebExtensionWindow] { get }
get · iOS 18.4+optionsPageURL
TypeScriptget optionsPageURL(): Promise<(string) | null>
Swift declarationvar optionsPageURL: URL? { get }
get · iOS 18.4+overrideNewTabPageURL
TypeScriptget overrideNewTabPageURL(): Promise<(string) | null>
Swift declarationvar overrideNewTabPageURL: URL? { get }
get · iOS 18.4+uniqueIdentifier
TypeScriptget uniqueIdentifier(): Promise<string>
Swift declarationvar uniqueIdentifier: String { get set }
set · iOS 18.4+uniqueIdentifier
TypeScriptsetUniqueIdentifier(value: string): Promise<void>
Swift declarationvar uniqueIdentifier: String { get set }
get · iOS 18.4+unsupportedAPIs
TypeScriptget unsupportedAPIs(): Promise<(Array<string>) | null>
Swift declarationvar unsupportedAPIs: Set<String>! { get set }
set · iOS 18.4+unsupportedAPIs
TypeScriptsetUnsupportedAPIs(value?: (Array<string>) | null): Promise<void>
Swift declarationvar unsupportedAPIs: Set<String>! { get set }
get · iOS 18.4+webExtension
TypeScriptget webExtension(): Promise<WKWebExtension>
Swift declarationvar webExtension: WKWebExtension { get }
get · iOS 18.4+webExtensionController
TypeScriptget webExtensionController(): Promise<(WKWebExtensionController) | null>
Swift declarationweak var webExtensionController: WKWebExtensionController? { get }
get · iOS 18.4+webViewConfiguration
TypeScriptget webViewConfiguration(): Promise<(WKWebViewConfiguration) | null>
Swift declaration@NSCopying var webViewConfiguration: WKWebViewConfiguration? { get }
method · iOS 18.4+didMoveTab
TypeScriptdidMoveTab(movedTab: Implements<WKWebExtensionTab> | SDKHandle, index: number, oldWindow?: (Implements<WKWebExtensionWindow> | SDKHandle) | null): Promise<void>
Swift declaration@MainActor @preconcurrency func didMoveTab(_ movedTab: any WKWebExtensionTab, from index: Int, in oldWindow: (any WKWebExtensionWindow)? = nil)
method · iOS 18.4+didCloseTab
TypeScriptdidCloseTab(closedTab: Implements<WKWebExtensionTab> | SDKHandle, windowIsClosing?: boolean): Promise<void>
Swift declaration@MainActor @preconcurrency func didCloseTab(_ closedTab: any WKWebExtensionTab, windowIsClosing: Bool = false)
method · iOS 18.4+didActivateTab
TypeScriptdidActivateTab(activatedTab: Implements<WKWebExtensionTab> | SDKHandle, previousTab?: (Implements<WKWebExtensionTab> | SDKHandle) | null): Promise<void>
Swift declaration@MainActor @preconcurrency func didActivateTab(_ activatedTab: any WKWebExtensionTab, previousActiveTab previousTab: (any WKWebExtensionTab)? = nil)
Skipped declarations
1 declarations were excluded from these bindings. Each reason comes from the generator or the iOS SDK compiler.
WKWebExtensionContext.init()
inherited init: cannot prove legal (class declares 3 custom initializers)
All WebKit types →