49 lines
1.4 KiB
TypeScript
49 lines
1.4 KiB
TypeScript
import type { Construct } from 'constructs';
|
|
import type { IKeyGroupRef, IPublicKeyRef, KeyGroupReference } from './cloudfront.generated';
|
|
import type { IResource } from '../../core';
|
|
import { Resource } from '../../core';
|
|
/**
|
|
* Represents a Key Group
|
|
*/
|
|
export interface IKeyGroup extends IResource, IKeyGroupRef {
|
|
/**
|
|
* The ID of the key group.
|
|
* @attribute
|
|
*/
|
|
readonly keyGroupId: string;
|
|
}
|
|
/**
|
|
* Properties for creating a Public Key
|
|
*/
|
|
export interface KeyGroupProps {
|
|
/**
|
|
* A name to identify the key group.
|
|
* @default - generated from the `id`
|
|
*/
|
|
readonly keyGroupName?: string;
|
|
/**
|
|
* A comment to describe the key group.
|
|
* @default - no comment
|
|
*/
|
|
readonly comment?: string;
|
|
/**
|
|
* A list of public keys to add to the key group.
|
|
*/
|
|
readonly items: IPublicKeyRef[];
|
|
}
|
|
/**
|
|
* A Key Group configuration
|
|
*
|
|
* @resource AWS::CloudFront::KeyGroup
|
|
*/
|
|
export declare class KeyGroup extends Resource implements IKeyGroup {
|
|
/** Uniquely identifies this class. */
|
|
static readonly PROPERTY_INJECTION_ID: string;
|
|
/** Imports a Key Group from its id. */
|
|
static fromKeyGroupId(scope: Construct, id: string, keyGroupId: string): IKeyGroup;
|
|
readonly keyGroupId: string;
|
|
readonly keyGroupRef: KeyGroupReference;
|
|
constructor(scope: Construct, id: string, props: KeyGroupProps);
|
|
private generateName;
|
|
}
|