package awscloudwatch import ( _init_ "github.com/aws/aws-cdk-go/awscdk/v2/jsii" _jsii_ "github.com/aws/jsii-runtime-go/runtime" ) // A real CloudWatch widget that has its own fixed size and remembers its position. // // This is in contrast to other widgets which exist for layout purposes. type ConcreteWidget interface { IWidget // The amount of vertical grid units the widget will take up. Height() *float64 // Any warnings that are produced as a result of putting together this widget. Warnings() *[]*string // The amount of horizontal grid units the widget will take up. Width() *float64 X() *float64 SetX(val *float64) Y() *float64 SetY(val *float64) // Copy the warnings from the given metric. CopyMetricWarnings(ms ...IMetric) // Place the widget at a given position. Position(x *float64, y *float64) // Return the widget JSON for use in the dashboard. ToJson() *[]interface{} } // The jsii proxy struct for ConcreteWidget type jsiiProxy_ConcreteWidget struct { jsiiProxy_IWidget } func (j *jsiiProxy_ConcreteWidget) Height() *float64 { var returns *float64 _jsii_.Get( j, "height", &returns, ) return returns } func (j *jsiiProxy_ConcreteWidget) Warnings() *[]*string { var returns *[]*string _jsii_.Get( j, "warnings", &returns, ) return returns } func (j *jsiiProxy_ConcreteWidget) Width() *float64 { var returns *float64 _jsii_.Get( j, "width", &returns, ) return returns } func (j *jsiiProxy_ConcreteWidget) X() *float64 { var returns *float64 _jsii_.Get( j, "x", &returns, ) return returns } func (j *jsiiProxy_ConcreteWidget) Y() *float64 { var returns *float64 _jsii_.Get( j, "y", &returns, ) return returns } func NewConcreteWidget_Override(c ConcreteWidget, width *float64, height *float64) { _init_.Initialize() _jsii_.Create( "aws-cdk-lib.aws_cloudwatch.ConcreteWidget", []interface{}{width, height}, c, ) } func (j *jsiiProxy_ConcreteWidget)SetX(val *float64) { _jsii_.Set( j, "x", val, ) } func (j *jsiiProxy_ConcreteWidget)SetY(val *float64) { _jsii_.Set( j, "y", val, ) } func (c *jsiiProxy_ConcreteWidget) CopyMetricWarnings(ms ...IMetric) { args := []interface{}{} for _, a := range ms { args = append(args, a) } _jsii_.InvokeVoid( c, "copyMetricWarnings", args, ) } func (c *jsiiProxy_ConcreteWidget) Position(x *float64, y *float64) { if err := c.validatePositionParameters(x, y); err != nil { panic(err) } _jsii_.InvokeVoid( c, "position", []interface{}{x, y}, ) } func (c *jsiiProxy_ConcreteWidget) ToJson() *[]interface{} { var returns *[]interface{} _jsii_.Invoke( c, "toJson", nil, // no parameters &returns, ) return returns }