export interface CreateDiscovererInput {
    /** The ARN of the event bus. */
    SourceArn: string;
    /** Support discovery of schemas in events sent to the bus from another account. (default: true). */
    CrossAccount?: boolean;
    /** A description for the discoverer. */
    Description?: string;
    /** Tags associated with the resource. */
    Tags?: Record<string, string>;
}
export interface CreateRegistryInput {
    /** The name of the registry. */
    RegistryName: string;
    /** A description of the registry to be created. */
    Description?: string;
    /** Tags to associate with the registry. */
    Tags?: Record<string, string>;
}
export interface CreateSchemaInput {
    /** The source of the schema definition. */
    Content: string;
    /** The name of the registry. */
    RegistryName: string;
    /** The name of the schema. */
    SchemaName: string;
    /** The type of schema. */
    Type: 'OpenApi3' | 'JSONSchemaDraft4';
    /** A description of the schema. */
    Description?: string;
    /** Tags associated with the schema. */
    Tags?: Record<string, string>;
}
export interface DeleteDiscovererInput {
    /** The ID of the discoverer. */
    DiscovererId: string;
}
export interface DeleteRegistryInput {
    /** The name of the registry. */
    RegistryName: string;
}
export interface DeleteResourcePolicyInput {
    /** The name of the registry. */
    RegistryName?: string;
}
export interface DeleteSchemaInput {
    /** The name of the registry. */
    RegistryName: string;
    /** The name of the schema. */
    SchemaName: string;
}
export interface DeleteSchemaVersionInput {
    /** The name of the registry. */
    RegistryName: string;
    /** The name of the schema. */
    SchemaName: string;
    /** The version number of the schema */
    SchemaVersion: string;
}
export interface DescribeCodeBindingInput {
    /** The language of the code binding. */
    Language: string;
    /** The name of the registry. */
    RegistryName: string;
    /** The name of the schema. */
    SchemaName: string;
    /** Specifying this limits the results to only this schema version. */
    SchemaVersion?: string;
}
export interface DescribeDiscovererInput {
    /** The ID of the discoverer. */
    DiscovererId: string;
}
export interface DescribeRegistryInput {
    /** The name of the registry. */
    RegistryName: string;
}
export interface DescribeSchemaInput {
    /** The name of the registry. */
    RegistryName: string;
    /** The name of the schema. */
    SchemaName: string;
    /** Specifying this limits the results to only this schema version. */
    SchemaVersion?: string;
}
export interface ExportSchemaInput {
    /** The name of the registry. */
    RegistryName: string;
    /** The name of the schema. */
    SchemaName: string;
    Type: string;
    /** Specifying this limits the results to only this schema version. */
    SchemaVersion?: string;
}
export interface GetCodeBindingSourceInput {
    /** The language of the code binding. */
    Language: string;
    /** The name of the registry. */
    RegistryName: string;
    /** The name of the schema. */
    SchemaName: string;
    /** Specifying this limits the results to only this schema version. */
    SchemaVersion?: string;
}
export interface GetDiscoveredSchemaInput {
    /** An array of strings where each string is a JSON event. These are the events that were used to generate the schema. The array includes a single type of event and has a maximum size of 10 events. */
    Events: string[];
    /** The type of event. */
    Type: 'OpenApi3' | 'JSONSchemaDraft4';
}
export interface GetResourcePolicyInput {
    /** The name of the registry. */
    RegistryName?: string;
}
export interface ListDiscoverersInput {
    /** Specifying this limits the results to only those discoverer IDs that start with the specified prefix. */
    DiscovererIdPrefix?: string;
    Limit?: number;
    /** The token that specifies the next page of results to return. To request the first page, leave NextToken empty. The token will expire in 24 hours, and cannot be shared with other accounts. */
    NextToken?: string;
    /** Specifying this limits the results to only those ARNs that start with the specified prefix. */
    SourceArnPrefix?: string;
}
export interface ListRegistriesInput {
    Limit?: number;
    /** The token that specifies the next page of results to return. To request the first page, leave NextToken empty. The token will expire in 24 hours, and cannot be shared with other accounts. */
    NextToken?: string;
    /** Specifying this limits the results to only those registry names that start with the specified prefix. */
    RegistryNamePrefix?: string;
    /** Can be set to Local or AWS to limit responses to your custom registries, or the ones provided by AWS. */
    Scope?: string;
}
export interface ListSchemasInput {
    /** The name of the registry. */
    RegistryName: string;
    Limit?: number;
    /** The token that specifies the next page of results to return. To request the first page, leave NextToken empty. The token will expire in 24 hours, and cannot be shared with other accounts. */
    NextToken?: string;
    /** Specifying this limits the results to only those schema names that start with the specified prefix. */
    SchemaNamePrefix?: string;
}
export interface ListSchemaVersionsInput {
    /** The name of the registry. */
    RegistryName: string;
    /** The name of the schema. */
    SchemaName: string;
    Limit?: number;
    /** The token that specifies the next page of results to return. To request the first page, leave NextToken empty. The token will expire in 24 hours, and cannot be shared with other accounts. */
    NextToken?: string;
}
export interface ListTagsForResourceInput {
    /** The ARN of the resource. */
    ResourceArn: string;
}
export interface PutCodeBindingInput {
    /** The language of the code binding. */
    Language: string;
    /** The name of the registry. */
    RegistryName: string;
    /** The name of the schema. */
    SchemaName: string;
    /** Specifying this limits the results to only this schema version. */
    SchemaVersion?: string;
}
/** The name of the policy. */
export interface PutResourcePolicyInput {
    /** The resource-based policy. */
    Policy: string;
    /** The name of the registry. */
    RegistryName?: string;
    /** The revision ID of the policy. */
    RevisionId?: string;
}
export interface SearchSchemasInput {
    /** Specifying this limits the results to only schemas that include the provided keywords. */
    Keywords: string;
    /** The name of the registry. */
    RegistryName: string;
    Limit?: number;
    /** The token that specifies the next page of results to return. To request the first page, leave NextToken empty. The token will expire in 24 hours, and cannot be shared with other accounts. */
    NextToken?: string;
}
export interface StartDiscovererInput {
    /** The ID of the discoverer. */
    DiscovererId: string;
}
export interface StopDiscovererInput {
    /** The ID of the discoverer. */
    DiscovererId: string;
}
export interface TagResourceInput {
    /** The ARN of the resource. */
    ResourceArn: string;
    /** Tags associated with the resource. */
    Tags: Record<string, string>;
}
export interface UntagResourceInput {
    /** The ARN of the resource. */
    ResourceArn: string;
    /** Keys of key-value pairs. */
    TagKeys: string[];
}
export interface UpdateDiscovererInput {
    /** The ID of the discoverer. */
    DiscovererId: string;
    /** Support discovery of schemas in events sent to the bus from another account. (default: true) */
    CrossAccount?: boolean;
    /** The description of the discoverer to update. */
    Description?: string;
}
/** Updates the registry. */
export interface UpdateRegistryInput {
    /** The name of the registry. */
    RegistryName: string;
    /** The description of the registry to update. */
    Description?: string;
}
export interface UpdateSchemaInput {
    /** The name of the registry. */
    RegistryName: string;
    /** The name of the schema. */
    SchemaName: string;
    /** The ID of the client token. */
    ClientTokenId?: string;
    /** The source of the schema definition. */
    Content?: string;
    /** The description of the schema. */
    Description?: string;
    /** The schema type for the events schema. */
    Type?: 'OpenApi3' | 'JSONSchemaDraft4';
}
/** schemas service binding for Step Functions SDK integrations. */
export declare class schemas {
    constructor();
    createDiscoverer<T>(params: CreateDiscovererInput): Promise<T>;
    createRegistry<T>(params: CreateRegistryInput): Promise<T>;
    createSchema<T>(params: CreateSchemaInput): Promise<T>;
    deleteDiscoverer<T>(params: DeleteDiscovererInput): Promise<T>;
    deleteRegistry<T>(params: DeleteRegistryInput): Promise<T>;
    deleteResourcePolicy<T>(params: DeleteResourcePolicyInput): Promise<T>;
    deleteSchema<T>(params: DeleteSchemaInput): Promise<T>;
    deleteSchemaVersion<T>(params: DeleteSchemaVersionInput): Promise<T>;
    describeCodeBinding<T>(params: DescribeCodeBindingInput): Promise<T>;
    describeDiscoverer<T>(params: DescribeDiscovererInput): Promise<T>;
    describeRegistry<T>(params: DescribeRegistryInput): Promise<T>;
    describeSchema<T>(params: DescribeSchemaInput): Promise<T>;
    exportSchema<T>(params: ExportSchemaInput): Promise<T>;
    getCodeBindingSource<T>(params: GetCodeBindingSourceInput): Promise<T>;
    getDiscoveredSchema<T>(params: GetDiscoveredSchemaInput): Promise<T>;
    getResourcePolicy<T>(params: GetResourcePolicyInput): Promise<T>;
    listDiscoverers<T>(params: ListDiscoverersInput): Promise<T>;
    listRegistries<T>(params: ListRegistriesInput): Promise<T>;
    listSchemas<T>(params: ListSchemasInput): Promise<T>;
    listSchemaVersions<T>(params: ListSchemaVersionsInput): Promise<T>;
    listTagsForResource<T>(params: ListTagsForResourceInput): Promise<T>;
    putCodeBinding<T>(params: PutCodeBindingInput): Promise<T>;
    putResourcePolicy<T>(params: PutResourcePolicyInput): Promise<T>;
    searchSchemas<T>(params: SearchSchemasInput): Promise<T>;
    startDiscoverer<T>(params: StartDiscovererInput): Promise<T>;
    stopDiscoverer<T>(params: StopDiscovererInput): Promise<T>;
    tagResource<T>(params: TagResourceInput): Promise<T>;
    untagResource<T>(params: UntagResourceInput): Promise<T>;
    updateDiscoverer<T>(params: UpdateDiscovererInput): Promise<T>;
    updateRegistry<T>(params: UpdateRegistryInput): Promise<T>;
    updateSchema<T>(params: UpdateSchemaInput): Promise<T>;
}
//# sourceMappingURL=schemas.d.ts.map