func (c *Browser) SetPermissionWithParams(ctx context.Context, v *BrowserSetPermissionParams) (*gcdmessage.ChromeResponse, error) {
	return c.target.SendDefaultRequest(ctx, &gcdmessage.ParamRequest{Id: c.target.GetId(), Method: "Browser.setPermission", Params: v})
}
SetPermissionWithParams - Set permission settings for given origin.
package gcdapi
import (
	"context"
	"github.com/wirepair/gcd/v2/gcdmessage"
)
type BrowserBounds struct {
	Left        int    `json:"left,omitempty"`         
	Top         int    `json:"top,omitempty"`          
	Width       int    `json:"width,omitempty"`        
	Height      int    `json:"height,omitempty"`       
	WindowState string `json:"windowState,omitempty"`  
}
type BrowserPermissionDescriptor struct {
	Name                     string `json:"name"`                                
	Sysex                    bool   `json:"sysex,omitempty"`                     
	UserVisibleOnly          bool   `json:"userVisibleOnly,omitempty"`           
	AllowWithoutSanitization bool   `json:"allowWithoutSanitization,omitempty"`  
	PanTiltZoom              bool   `json:"panTiltZoom,omitempty"`               
}
type BrowserBucket struct {
	Low   int `json:"low"`    
	High  int `json:"high"`   
	Count int `json:"count"`  
}
type BrowserHistogram struct {
	Name    string           `json:"name"`     
	Sum     int              `json:"sum"`      
	Count   int              `json:"count"`    
	Buckets []*BrowserBucket `json:"buckets"`  
}
type BrowserDownloadWillBeginEvent struct {
	Method string `json:"method"`
	Params struct {
		FrameId           string `json:"frameId"`            
		Guid              string `json:"guid"`               
		Url               string `json:"url"`                
		SuggestedFilename string `json:"suggestedFilename"`  
	} `json:"Params,omitempty"`
}
type BrowserDownloadProgressEvent struct {
	Method string `json:"method"`
	Params struct {
		Guid          string  `json:"guid"`           
		TotalBytes    float64 `json:"totalBytes"`     
		ReceivedBytes float64 `json:"receivedBytes"`  
		State         string  `json:"state"`          
	} `json:"Params,omitempty"`
}
type Browser struct {
	target gcdmessage.ChromeTargeter
}
func NewBrowser(target gcdmessage.ChromeTargeter) *Browser {
	c := &Browser{target: target}
	return c
}
type BrowserSetPermissionParams struct {
	Permission *BrowserPermissionDescriptor `json:"permission"`
	Setting string `json:"setting"`
	Origin string `json:"origin,omitempty"`
	BrowserContextId string `json:"browserContextId,omitempty"`
}