// GetAWSGreengrassFunctionDefinitionVersionWithName retrieves all AWSGreengrassFunctionDefinitionVersion items from an AWS CloudFormation template
// whose logical ID matches the provided name. Returns an error if not found.
344839
func (t *Template) GetAWSGreengrassFunctionDefinitionVersionWithName(name string) (*resources.AWSGreengrassFunctionDefinitionVersion, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSGreengrassFunctionDefinitionVersion:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSGreengrassFunctionDefinitionVersion not found", name)
}
1309576
func (t *Template) GetAWSECSTaskDefinitionWithName(name string) (*resources.AWSECSTaskDefinition, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSECSTaskDefinition:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSECSTaskDefinition not found", name)
}
818061
func (t *Template) GetAllAWSGreengrassConnectorDefinitionResources() map[string]*resources.AWSGreengrassConnectorDefinition {
	results := map[string]*resources.AWSGreengrassConnectorDefinition{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSGreengrassConnectorDefinition:
			results[name] = resource
		}
	}
	return results
}
877322
func (t *Template) GetAWSSNSTopicWithName(name string) (*resources.AWSSNSTopic, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSSNSTopic:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSSNSTopic not found", name)
}
25106
func (t *Template) GetAWSNeptuneDBInstanceWithName(name string) (*resources.AWSNeptuneDBInstance, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSNeptuneDBInstance:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSNeptuneDBInstance not found", name)
}
1360
func (t *Template) GetAWSBatchJobDefinitionWithName(name string) (*resources.AWSBatchJobDefinition, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSBatchJobDefinition:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSBatchJobDefinition not found", name)
}
293349
func (t *Template) GetAWSGlueDevEndpointWithName(name string) (*resources.AWSGlueDevEndpoint, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSGlueDevEndpoint:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSGlueDevEndpoint not found", name)
}
805029
func (t *Template) GetAWSLambdaLayerVersionPermissionWithName(name string) (*resources.AWSLambdaLayerVersionPermission, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSLambdaLayerVersionPermission:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSLambdaLayerVersionPermission not found", name)
}
20464
func (t *Template) GetAWSApplicationAutoScalingScalableTargetWithName(name string) (*resources.AWSApplicationAutoScalingScalableTarget, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSApplicationAutoScalingScalableTarget:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSApplicationAutoScalingScalableTarget not found", name)
}
723824
func (t *Template) GetAllAWSGreengrassDeviceDefinitionResources() map[string]*resources.AWSGreengrassDeviceDefinition {
	results := map[string]*resources.AWSGreengrassDeviceDefinition{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSGreengrassDeviceDefinition:
			results[name] = resource
		}
	}
	return results
}
1151665
func (t *Template) GetAWSGuardDutyThreatIntelSetWithName(name string) (*resources.AWSGuardDutyThreatIntelSet, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSGuardDutyThreatIntelSet:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSGuardDutyThreatIntelSet not found", name)
}
696260
func (t *Template) GetAWSWAFRegionalSizeConstraintSetWithName(name string) (*resources.AWSWAFRegionalSizeConstraintSet, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSWAFRegionalSizeConstraintSet:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSWAFRegionalSizeConstraintSet not found", name)
}
641855
func (t *Template) GetAWSServiceCatalogCloudFormationProductWithName(name string) (*resources.AWSServiceCatalogCloudFormationProduct, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSServiceCatalogCloudFormationProduct:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSServiceCatalogCloudFormationProduct not found", name)
}
142495
func (t *Template) GetAWSDMSReplicationInstanceWithName(name string) (*resources.AWSDMSReplicationInstance, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSDMSReplicationInstance:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSDMSReplicationInstance not found", name)
}
700532
func (t *Template) GetAWSServiceCatalogCloudFormationProvisionedProductWithName(name string) (*resources.AWSServiceCatalogCloudFormationProvisionedProduct, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSServiceCatalogCloudFormationProvisionedProduct:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSServiceCatalogCloudFormationProvisionedProduct not found", name)
}
242563
func (t *Template) GetAWSCloudFrontStreamingDistributionWithName(name string) (*resources.AWSCloudFrontStreamingDistribution, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSCloudFrontStreamingDistribution:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSCloudFrontStreamingDistribution not found", name)
}
791360
func (t *Template) GetAWSLambdaLayerVersionWithName(name string) (*resources.AWSLambdaLayerVersion, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSLambdaLayerVersion:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSLambdaLayerVersion not found", name)
}